Home | History | Annotate | Download | only in ip32
      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 __ASM_MACE_H__
     20 #define __ASM_MACE_H__
     21 #define MACE_BASE 0x1f000000
     22 struct mace_pci {
     23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     24  volatile unsigned int error_addr;
     25  volatile unsigned int error;
     26 #define MACEPCI_ERROR_MASTER_ABORT BIT(31)
     27 #define MACEPCI_ERROR_TARGET_ABORT BIT(30)
     28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     29 #define MACEPCI_ERROR_DATA_PARITY_ERR BIT(29)
     30 #define MACEPCI_ERROR_RETRY_ERR BIT(28)
     31 #define MACEPCI_ERROR_ILLEGAL_CMD BIT(27)
     32 #define MACEPCI_ERROR_SYSTEM_ERR BIT(26)
     33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     34 #define MACEPCI_ERROR_INTERRUPT_TEST BIT(25)
     35 #define MACEPCI_ERROR_PARITY_ERR BIT(24)
     36 #define MACEPCI_ERROR_OVERRUN BIT(23)
     37 #define MACEPCI_ERROR_RSVD BIT(22)
     38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     39 #define MACEPCI_ERROR_MEMORY_ADDR BIT(21)
     40 #define MACEPCI_ERROR_CONFIG_ADDR BIT(20)
     41 #define MACEPCI_ERROR_MASTER_ABORT_ADDR_VALID BIT(19)
     42 #define MACEPCI_ERROR_TARGET_ABORT_ADDR_VALID BIT(18)
     43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     44 #define MACEPCI_ERROR_DATA_PARITY_ADDR_VALID BIT(17)
     45 #define MACEPCI_ERROR_RETRY_ADDR_VALID BIT(16)
     46 #define MACEPCI_ERROR_SIG_TABORT BIT(4)
     47 #define MACEPCI_ERROR_DEVSEL_MASK 0xc0
     48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     49 #define MACEPCI_ERROR_DEVSEL_FAST 0
     50 #define MACEPCI_ERROR_DEVSEL_MED 0x40
     51 #define MACEPCI_ERROR_DEVSEL_SLOW 0x80
     52 #define MACEPCI_ERROR_FBB BIT(1)
     53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     54 #define MACEPCI_ERROR_66MHZ BIT(0)
     55  volatile unsigned int control;
     56 #define MACEPCI_CONTROL_INT(x) BIT(x)
     57 #define MACEPCI_CONTROL_INT_MASK 0xff
     58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     59 #define MACEPCI_CONTROL_SERR_ENA BIT(8)
     60 #define MACEPCI_CONTROL_ARB_N6 BIT(9)
     61 #define MACEPCI_CONTROL_PARITY_ERR BIT(10)
     62 #define MACEPCI_CONTROL_MRMRA_ENA BIT(11)
     63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     64 #define MACEPCI_CONTROL_ARB_N3 BIT(12)
     65 #define MACEPCI_CONTROL_ARB_N4 BIT(13)
     66 #define MACEPCI_CONTROL_ARB_N5 BIT(14)
     67 #define MACEPCI_CONTROL_PARK_LIU BIT(15)
     68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     69 #define MACEPCI_CONTROL_INV_INT(x) BIT(16+x)
     70 #define MACEPCI_CONTROL_INV_INT_MASK 0x00ff0000
     71 #define MACEPCI_CONTROL_OVERRUN_INT BIT(24)
     72 #define MACEPCI_CONTROL_PARITY_INT BIT(25)
     73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     74 #define MACEPCI_CONTROL_SERR_INT BIT(26)
     75 #define MACEPCI_CONTROL_IT_INT BIT(27)
     76 #define MACEPCI_CONTROL_RE_INT BIT(28)
     77 #define MACEPCI_CONTROL_DPED_INT BIT(29)
     78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     79 #define MACEPCI_CONTROL_TAR_INT BIT(30)
     80 #define MACEPCI_CONTROL_MAR_INT BIT(31)
     81  volatile unsigned int rev;
     82  unsigned int _pad[0xcf8/4 - 4];
     83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     84  volatile unsigned int config_addr;
     85  union {
     86  volatile unsigned char b[4];
     87  volatile unsigned short w[2];
     88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     89  volatile unsigned int l;
     90  } config_data;
     91 };
     92 #define MACEPCI_LOW_MEMORY 0x1a000000
     93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     94 #define MACEPCI_LOW_IO 0x18000000
     95 #define MACEPCI_SWAPPED_VIEW 0
     96 #define MACEPCI_NATIVE_VIEW 0x40000000
     97 #define MACEPCI_IO 0x80000000
     98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     99 #define MACEPCI_HI_MEMORY 0x280000000
    100 #define MACEPCI_HI_IO 0x100000000
    101 struct mace_video {
    102  unsigned long xxx;
    103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    104 };
    105 struct mace_ethernet {
    106  volatile unsigned long mac_ctrl;
    107  volatile unsigned long int_stat;
    108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    109  volatile unsigned long dma_ctrl;
    110  volatile unsigned long timer;
    111  volatile unsigned long tx_int_al;
    112  volatile unsigned long rx_int_al;
    113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    114  volatile unsigned long tx_info;
    115  volatile unsigned long tx_info_al;
    116  volatile unsigned long rx_buff;
    117  volatile unsigned long rx_buff_al1;
    118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    119  volatile unsigned long rx_buff_al2;
    120  volatile unsigned long diag;
    121  volatile unsigned long phy_data;
    122  volatile unsigned long phy_regs;
    123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    124  volatile unsigned long phy_trans_go;
    125  volatile unsigned long backoff_seed;
    126  volatile unsigned long imq_reserved[4];
    127  volatile unsigned long mac_addr;
    128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    129  volatile unsigned long mac_addr2;
    130  volatile unsigned long mcast_filter;
    131  volatile unsigned long tx_ring_base;
    132  volatile unsigned long tx_pkt1_hdr;
    133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    134  volatile unsigned long tx_pkt1_ptr[3];
    135  volatile unsigned long tx_pkt2_hdr;
    136  volatile unsigned long tx_pkt2_ptr[3];
    137  volatile unsigned long rx_fifo;
    138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    139 };
    140 struct mace_audio {
    141  volatile unsigned long control;
    142  volatile unsigned long codec_control;
    143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    144  volatile unsigned long codec_mask;
    145  volatile unsigned long codec_read;
    146  struct {
    147  volatile unsigned long control;
    148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    149  volatile unsigned long read_ptr;
    150  volatile unsigned long write_ptr;
    151  volatile unsigned long depth;
    152  } chan[3];
    153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    154 };
    155 struct mace_parport {
    156 #define MACEPAR_CONTEXT_LASTFLAG BIT(63)
    157 #define MACEPAR_CONTEXT_DATA_BOUND 0x0000000000001000UL
    158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    159 #define MACEPAR_CONTEXT_DATALEN_MASK 0x00000fff00000000UL
    160 #define MACEPAR_CONTEXT_DATALEN_SHIFT 32
    161 #define MACEPAR_CONTEXT_BASEADDR_MASK 0x00000000ffffffffUL
    162  volatile u64 context_a;
    163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    164  volatile u64 context_b;
    165 #define MACEPAR_CTLSTAT_DIRECTION BIT(0)
    166 #define MACEPAR_CTLSTAT_ENABLE BIT(1)
    167 #define MACEPAR_CTLSTAT_RESET BIT(2)
    168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    169 #define MACEPAR_CTLSTAT_CTXB_VALID BIT(3)
    170 #define MACEPAR_CTLSTAT_CTXA_VALID BIT(4)
    171  volatile u64 cntlstat;
    172 #define MACEPAR_DIAG_CTXINUSE BIT(0)
    173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    174 #define MACEPAR_DIAG_DMACTIVE BIT(1)
    175 #define MACEPAR_DIAG_CTRMASK 0x0000000000003ffcUL
    176 #define MACEPAR_DIAG_CTRSHIFT 2
    177  volatile u64 diagnostic;
    178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    179 };
    180 struct mace_isactrl {
    181  volatile unsigned long ringbase;
    182 #define MACEISA_RINGBUFFERS_SIZE (8 * 4096)
    183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    184  volatile unsigned long misc;
    185 #define MACEISA_FLASH_WE BIT(0)
    186 #define MACEISA_PWD_CLEAR BIT(1)
    187 #define MACEISA_NIC_DEASSERT BIT(2)
    188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    189 #define MACEISA_NIC_DATA BIT(3)
    190 #define MACEISA_LED_RED BIT(4)
    191 #define MACEISA_LED_GREEN BIT(5)
    192 #define MACEISA_DP_RAM_ENABLE BIT(6)
    193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    194  volatile unsigned long istat;
    195  volatile unsigned long imask;
    196 #define MACEISA_AUDIO_SW_INT BIT(0)
    197 #define MACEISA_AUDIO_SC_INT BIT(1)
    198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    199 #define MACEISA_AUDIO1_DMAT_INT BIT(2)
    200 #define MACEISA_AUDIO1_OF_INT BIT(3)
    201 #define MACEISA_AUDIO2_DMAT_INT BIT(4)
    202 #define MACEISA_AUDIO2_MERR_INT BIT(5)
    203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    204 #define MACEISA_AUDIO3_DMAT_INT BIT(6)
    205 #define MACEISA_AUDIO3_MERR_INT BIT(7)
    206 #define MACEISA_RTC_INT BIT(8)
    207 #define MACEISA_KEYB_INT BIT(9)
    208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    209 #define MACEISA_KEYB_POLL_INT BIT(10)
    210 #define MACEISA_MOUSE_INT BIT(11)
    211 #define MACEISA_MOUSE_POLL_INT BIT(12)
    212 #define MACEISA_TIMER0_INT BIT(13)
    213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    214 #define MACEISA_TIMER1_INT BIT(14)
    215 #define MACEISA_TIMER2_INT BIT(15)
    216 #define MACEISA_PARALLEL_INT BIT(16)
    217 #define MACEISA_PAR_CTXA_INT BIT(17)
    218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    219 #define MACEISA_PAR_CTXB_INT BIT(18)
    220 #define MACEISA_PAR_MERR_INT BIT(19)
    221 #define MACEISA_SERIAL1_INT BIT(20)
    222 #define MACEISA_SERIAL1_TDMAT_INT BIT(21)
    223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    224 #define MACEISA_SERIAL1_TDMAPR_INT BIT(22)
    225 #define MACEISA_SERIAL1_TDMAME_INT BIT(23)
    226 #define MACEISA_SERIAL1_RDMAT_INT BIT(24)
    227 #define MACEISA_SERIAL1_RDMAOR_INT BIT(25)
    228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    229 #define MACEISA_SERIAL2_INT BIT(26)
    230 #define MACEISA_SERIAL2_TDMAT_INT BIT(27)
    231 #define MACEISA_SERIAL2_TDMAPR_INT BIT(28)
    232 #define MACEISA_SERIAL2_TDMAME_INT BIT(29)
    233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    234 #define MACEISA_SERIAL2_RDMAT_INT BIT(30)
    235 #define MACEISA_SERIAL2_RDMAOR_INT BIT(31)
    236  volatile unsigned long _pad[0x2000/8 - 4];
    237  volatile unsigned long dp_ram[0x400];
    238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    239  struct mace_parport parport;
    240 };
    241 struct mace_ps2port {
    242  volatile unsigned long tx;
    243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    244  volatile unsigned long rx;
    245  volatile unsigned long control;
    246  volatile unsigned long status;
    247 };
    248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    249 struct mace_ps2 {
    250  struct mace_ps2port keyb;
    251  struct mace_ps2port mouse;
    252 };
    253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    254 struct mace_i2c {
    255  volatile unsigned long config;
    256 #define MACEI2C_RESET BIT(0)
    257 #define MACEI2C_FAST BIT(1)
    258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    259 #define MACEI2C_DATA_OVERRIDE BIT(2)
    260 #define MACEI2C_CLOCK_OVERRIDE BIT(3)
    261 #define MACEI2C_DATA_STATUS BIT(4)
    262 #define MACEI2C_CLOCK_STATUS BIT(5)
    263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    264  volatile unsigned long control;
    265  volatile unsigned long data;
    266 };
    267 typedef union {
    268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    269  volatile unsigned long ust_msc;
    270  struct reg {
    271  volatile unsigned int ust;
    272  volatile unsigned int msc;
    273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    274  } reg;
    275 } timer_reg;
    276 struct mace_timers {
    277  volatile unsigned long ust;
    278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    279 #define MACE_UST_PERIOD_NS 960
    280  volatile unsigned long compare1;
    281  volatile unsigned long compare2;
    282  volatile unsigned long compare3;
    283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    284  timer_reg audio_in;
    285  timer_reg audio_out1;
    286  timer_reg audio_out2;
    287  timer_reg video_in1;
    288 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    289  timer_reg video_in2;
    290  timer_reg video_out;
    291 };
    292 struct mace_perif {
    293 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    294  struct mace_audio audio;
    295  char _pad0[0x10000 - sizeof(struct mace_audio)];
    296  struct mace_isactrl ctrl;
    297  char _pad1[0x10000 - sizeof(struct mace_isactrl)];
    298 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    299  struct mace_ps2 ps2;
    300  char _pad2[0x10000 - sizeof(struct mace_ps2)];
    301  struct mace_i2c i2c;
    302  char _pad3[0x10000 - sizeof(struct mace_i2c)];
    303 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    304  struct mace_timers timers;
    305  char _pad4[0x10000 - sizeof(struct mace_timers)];
    306 };
    307 struct mace_parallel {
    308 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    309 };
    310 struct mace_ecp1284 {
    311 };
    312 struct mace_serial {
    313 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    314  volatile unsigned long xxx;
    315 };
    316 struct mace_isa {
    317  struct mace_parallel parallel;
    318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    319  char _pad1[0x8000 - sizeof(struct mace_parallel)];
    320  struct mace_ecp1284 ecp1284;
    321  char _pad2[0x8000 - sizeof(struct mace_ecp1284)];
    322  struct mace_serial serial1;
    323 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    324  char _pad3[0x8000 - sizeof(struct mace_serial)];
    325  struct mace_serial serial2;
    326  char _pad4[0x8000 - sizeof(struct mace_serial)];
    327  volatile unsigned char rtc[0x10000];
    328 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    329 };
    330 struct sgi_mace {
    331  char _reserved[0x80000];
    332  struct mace_pci pci;
    333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    334  char _pad0[0x80000 - sizeof(struct mace_pci)];
    335  struct mace_video video_in1;
    336  char _pad1[0x80000 - sizeof(struct mace_video)];
    337  struct mace_video video_in2;
    338 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    339  char _pad2[0x80000 - sizeof(struct mace_video)];
    340  struct mace_video video_out;
    341  char _pad3[0x80000 - sizeof(struct mace_video)];
    342  struct mace_ethernet eth;
    343 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    344  char _pad4[0x80000 - sizeof(struct mace_ethernet)];
    345  struct mace_perif perif;
    346  char _pad5[0x80000 - sizeof(struct mace_perif)];
    347  struct mace_isa isa;
    348 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    349  char _pad6[0x80000 - sizeof(struct mace_isa)];
    350 };
    351 #endif
    352