1 /**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 *** To edit the content of this header, modify the corresponding 11 *** source file (e.g. under external/kernel-headers/original/) then 12 *** run bionic/libc/kernel/tools/update_all.py 13 *** 14 *** Any manual change here will be lost the next time this script will 15 *** be run. You've been warned! 16 *** 17 **************************************************************************** 18 ****************************************************************************/ 19 #ifndef _SGI_IOC_H 20 #define _SGI_IOC_H 21 #include <linux/types.h> 22 #include <asm/sgi/pi1.h> 23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24 struct sgioc_uart_regs { 25 u8 _ctrl1[3]; 26 volatile u8 ctrl1; 27 u8 _data1[3]; 28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29 volatile u8 data1; 30 u8 _ctrl2[3]; 31 volatile u8 ctrl2; 32 u8 _data2[3]; 33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34 volatile u8 data2; 35 }; 36 struct sgioc_keyb_regs { 37 u8 _data[3]; 38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39 volatile u8 data; 40 u8 _command[3]; 41 volatile u8 command; 42 }; 43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44 struct sgint_regs { 45 u8 _istat0[3]; 46 volatile u8 istat0; 47 #define SGINT_ISTAT0_FFULL 0x01 48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49 #define SGINT_ISTAT0_SCSI0 0x02 50 #define SGINT_ISTAT0_SCSI1 0x04 51 #define SGINT_ISTAT0_ENET 0x08 52 #define SGINT_ISTAT0_GFXDMA 0x10 53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54 #define SGINT_ISTAT0_PPORT 0x20 55 #define SGINT_ISTAT0_HPC2 0x40 56 #define SGINT_ISTAT0_LIO2 0x80 57 u8 _imask0[3]; 58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59 volatile u8 imask0; 60 u8 _istat1[3]; 61 volatile u8 istat1; 62 #define SGINT_ISTAT1_ISDNI 0x01 63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64 #define SGINT_ISTAT1_PWR 0x02 65 #define SGINT_ISTAT1_ISDNH 0x04 66 #define SGINT_ISTAT1_LIO3 0x08 67 #define SGINT_ISTAT1_HPC3 0x10 68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69 #define SGINT_ISTAT1_AFAIL 0x20 70 #define SGINT_ISTAT1_VIDEO 0x40 71 #define SGINT_ISTAT1_GIO2 0x80 72 u8 _imask1[3]; 73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74 volatile u8 imask1; 75 u8 _vmeistat[3]; 76 volatile u8 vmeistat; 77 u8 _cmeimask0[3]; 78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79 volatile u8 cmeimask0; 80 u8 _cmeimask1[3]; 81 volatile u8 cmeimask1; 82 u8 _cmepol[3]; 83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84 volatile u8 cmepol; 85 u8 _tclear[3]; 86 volatile u8 tclear; 87 u8 _errstat[3]; 88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 89 volatile u8 errstat; 90 u32 _unused0[2]; 91 u8 _tcnt0[3]; 92 volatile u8 tcnt0; 93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94 u8 _tcnt1[3]; 95 volatile u8 tcnt1; 96 u8 _tcnt2[3]; 97 volatile u8 tcnt2; 98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99 u8 _tcword[3]; 100 volatile u8 tcword; 101 #define SGINT_TCWORD_BCD 0x01 102 #define SGINT_TCWORD_MMASK 0x0e 103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104 #define SGINT_TCWORD_MITC 0x00 105 #define SGINT_TCWORD_MOS 0x02 106 #define SGINT_TCWORD_MRGEN 0x04 107 #define SGINT_TCWORD_MSWGEN 0x06 108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 109 #define SGINT_TCWORD_MSWST 0x08 110 #define SGINT_TCWORD_MHWST 0x0a 111 #define SGINT_TCWORD_CMASK 0x30 112 #define SGINT_TCWORD_CLAT 0x00 113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 114 #define SGINT_TCWORD_CLSB 0x10 115 #define SGINT_TCWORD_CMSB 0x20 116 #define SGINT_TCWORD_CALL 0x30 117 #define SGINT_TCWORD_CNT0 0x00 118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 119 #define SGINT_TCWORD_CNT1 0x40 120 #define SGINT_TCWORD_CNT2 0x80 121 #define SGINT_TCWORD_CRBCK 0xc0 122 }; 123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 124 #define SGINT_TIMER_CLOCK 1000000 125 #define SGINT_TCSAMP_COUNTER ((SGINT_TIMER_CLOCK / HZ) + 255) 126 struct sgioc_regs { 127 struct pi1_regs pport; 128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 129 u32 _unused0[2]; 130 struct sgioc_uart_regs uart; 131 struct sgioc_keyb_regs kbdmouse; 132 u8 _gcsel[3]; 133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 134 volatile u8 gcsel; 135 u8 _genctrl[3]; 136 volatile u8 genctrl; 137 u8 _panel[3]; 138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 139 volatile u8 panel; 140 #define SGIOC_PANEL_POWERON 0x01 141 #define SGIOC_PANEL_POWERINTR 0x02 142 #define SGIOC_PANEL_VOLDNINTR 0x10 143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 144 #define SGIOC_PANEL_VOLDNHOLD 0x20 145 #define SGIOC_PANEL_VOLUPINTR 0x40 146 #define SGIOC_PANEL_VOLUPHOLD 0x80 147 u32 _unused1; 148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 149 u8 _sysid[3]; 150 volatile u8 sysid; 151 #define SGIOC_SYSID_FULLHOUSE 0x01 152 #define SGIOC_SYSID_BOARDREV(x) (((x) & 0x1e) >> 1) 153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 154 #define SGIOC_SYSID_CHIPREV(x) (((x) & 0xe0) >> 5) 155 u32 _unused2; 156 u8 _read[3]; 157 volatile u8 read; 158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 159 u32 _unused3; 160 u8 _dmasel[3]; 161 volatile u8 dmasel; 162 #define SGIOC_DMASEL_SCLK10MHZ 0x00 163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 164 #define SGIOC_DMASEL_ISDNB 0x01 165 #define SGIOC_DMASEL_ISDNA 0x02 166 #define SGIOC_DMASEL_PPORT 0x04 167 #define SGIOC_DMASEL_SCLK667MHZ 0x10 168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 169 #define SGIOC_DMASEL_SCLKEXT 0x20 170 u32 _unused4; 171 u8 _reset[3]; 172 volatile u8 reset; 173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 174 #define SGIOC_RESET_PPORT 0x01 175 #define SGIOC_RESET_KBDMOUSE 0x02 176 #define SGIOC_RESET_EISA 0x04 177 #define SGIOC_RESET_ISDN 0x08 178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 179 #define SGIOC_RESET_LC0OFF 0x10 180 #define SGIOC_RESET_LC1OFF 0x20 181 u32 _unused5; 182 u8 _write[3]; 183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 184 volatile u8 write; 185 #define SGIOC_WRITE_NTHRESH 0x01 186 #define SGIOC_WRITE_TPSPEED 0x02 187 #define SGIOC_WRITE_EPSEL 0x04 188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 189 #define SGIOC_WRITE_EASEL 0x08 190 #define SGIOC_WRITE_U1AMODE 0x10 191 #define SGIOC_WRITE_U0AMODE 0x20 192 #define SGIOC_WRITE_MLO 0x40 193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 194 #define SGIOC_WRITE_MHI 0x80 195 u32 _unused6; 196 struct sgint_regs int3; 197 u32 _unused7[16]; 198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 199 volatile u32 extio; 200 #define EXTIO_S0_IRQ_3 0x8000 201 #define EXTIO_S0_IRQ_2 0x4000 202 #define EXTIO_S0_IRQ_1 0x2000 203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 204 #define EXTIO_S0_RETRACE 0x1000 205 #define EXTIO_SG_IRQ_3 0x0800 206 #define EXTIO_SG_IRQ_2 0x0400 207 #define EXTIO_SG_IRQ_1 0x0200 208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 209 #define EXTIO_SG_RETRACE 0x0100 210 #define EXTIO_GIO_33MHZ 0x0080 211 #define EXTIO_EISA_BUSERR 0x0040 212 #define EXTIO_MC_BUSERR 0x0020 213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 214 #define EXTIO_HPC3_BUSERR 0x0010 215 #define EXTIO_S0_STAT_1 0x0008 216 #define EXTIO_S0_STAT_0 0x0004 217 #define EXTIO_SG_STAT_1 0x0002 218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 219 #define EXTIO_SG_STAT_0 0x0001 220 }; 221 #endif 222