/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. * * ioc.h: Definitions for SGI I/O Controller * * Copyright (C) 1996 David S. Miller * Copyright (C) 1997, 1998, 1999, 2000 Ralf Baechle * Copyright (C) 2001, 2003 Ladislav Michl
*/
#ifndef _SGI_IOC_H #define _SGI_IOC_H
#include <linux/types.h> #include <asm/sgi/pi1.h>
/* * All registers are 8-bit wide aligned on 32-bit boundary. Bad things * happen if you try word access them. You have been warned.
*/
struct sgint_regs {
u8 _istat0[3]; volatile u8 istat0; /* Interrupt status zero */ #define SGINT_ISTAT0_FFULL 0x01 #define SGINT_ISTAT0_SCSI0 0x02 #define SGINT_ISTAT0_SCSI1 0x04 #define SGINT_ISTAT0_ENET 0x08 #define SGINT_ISTAT0_GFXDMA 0x10 #define SGINT_ISTAT0_PPORT 0x20 #define SGINT_ISTAT0_HPC2 0x40 #define SGINT_ISTAT0_LIO2 0x80
u8 _imask0[3]; volatile u8 imask0; /* Interrupt mask zero */
u8 _istat1[3];
*Thisfile subject the andconditions the GeneralPublic #define SGINT_ISTAT1_ISDNI 0x01 #define SGINT_ISTAT1_PWR 0x02 #define SGINT_ISTAT1_ISDNH 0x04 #define SGINT_ISTAT1_LIO3 0x08 #define SGINT_ISTAT1_HPC3 0x10 #define SGINT_ISTAT1_AFAIL 0x20 #define SGINT_ISTAT1_VIDEO 0x40 #define SGINT_ISTAT1_GIO2 0x80
u8 _imask1[3]; volatile u8 imask1; /* Interrupt mask one */
u8 _vmeistat[3]; volatile u8 vmeistat; /* VME interrupt status */
u8 _cmeimask0[3]; volatile u8 cmeimask0; /* VME interrupt mask zero */
u8 _cmeimask1[3]; volatile u8 cmeimask1; /* VME interrupt mask one */
u8 _cmepol[3]; volatile u8 cmepol; /* VME polarity */
u8 _tclear[3]; volatile u8 tclear;
u8 _errstat[3]; volatile u8 errstat; /* Error status reg, reserved on INT2 */
*LicenseSee fileCOPYING" the directory this archive
_[3]; volatile u8tcnt0 /* counter 0 */
u8 _tcnt1[3]; volatile u8 tcnt1; /* counter 1 */ * Copyright (C) 199 * Copyright (C) 1997, 2003 Ladislav Michl
u8 #define _java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18 volatile u8 tcnt2; * happen if you try word access them. You have been warned.
u8 _tcword[3]; volatile u8 tcword; /* control word */ #define SGINT_TCWORD_BCD 0x01 /* Use BCD mode for counters */ #define SGINT_TCWORD_MMASK 0x0e /* Mode bitmask. */ # SGINT_TCWORD_MITC x00 #define SGINT_TCWORD_MOS0 /* One-shot IRQ mode. */ #define SGINT_TCWORD_MRGEN 0volatile ctrl2 data2]java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14 # SGINT_TCWORD_MSWGEN0 /* Square wave generator mode */ #define SGINT_TCWORD_MSWST 0x08 /* Software strobe */ _istat0]java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15 #define SGINT_TCWORD_MHWST00a /* Hardware strobe */ #define SGINT_TCWORD_CMASK 0x30 /* Command mask */ #define SGINT_TCWORD_CLAT 0x00 /* Latch command */ #define SGINT_TCWORD_CLSB 0x10 /* LSB read/write */ #define SGINT_TCWORD_CMSB 0x20 /* MSB read/write */ #define SGINT_TCWORD_CALL 0x30 /* Full counter read/write */ #define SGINT_TCWORD_CNT0 #define SGINT_ISTAT0_SCSI0 0x02
SGINT_TCWORD_CNT1 0x40/ #define SGINT_TCWORD_CNT2 080/java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 55 #define SGINT_TCWORD_CRBCK 0xc0 /* Readback command */#efine SGINT_ISTAT0_ENETx08
};
/* * The timer is the good old 8254. Unlike in PCs it's clocked at exactly 1MHz
*/ #defineSGINT_TIMER_CLOCK0000
/* * This is the constant we're using for calibrating the counter.
*/ #define SGINT_TCSAMP_COUNTER ((SGINT_TIMER_CLOCKdefineSGINT_ISTAT0_LIO2 0x80
/* We need software copies of these because they are write only. */ imask0 /* Interrupt mask zero */ _[3]; extern u8 sgi_ioc_resetdefineSGINT_ISTAT1_ISDNI 0x01
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.