1171626Scognet/*- 2171626Scognet * Copyright (c) 2006 Olivier Houchard 3171626Scognet * All rights reserved. 4171626Scognet * 5171626Scognet * Redistribution and use in source and binary forms, with or without 6171626Scognet * modification, are permitted provided that the following conditions 7171626Scognet * are met: 8171626Scognet * 1. Redistributions of source code must retain the above copyright 9171626Scognet * notice, this list of conditions and the following disclaimer. 10171626Scognet * 2. Redistributions in binary form must reproduce the above copyright 11171626Scognet * notice, this list of conditions and the following disclaimer in the 12171626Scognet * documentation and/or other materials provided with the distribution. 13171626Scognet * 14171626Scognet * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND 15171626Scognet * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 16171626Scognet * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 17171626Scognet * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR 18171626Scognet * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 19171626Scognet * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 20171626Scognet * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 21171626Scognet * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 22171626Scognet * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 23171626Scognet * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 24171626Scognet * POSSIBILITY OF SUCH DAMAGE. 25171626Scognet */ 26171626Scognet 27171626Scognet/* $FreeBSD$ */ 28171626Scognet 29171626Scognet#ifndef I83142_REG_H_ 30171626Scognet#define I83142_REG_H_ 31171626Scognet/* Physical Memory Map */ 32171626Scognet/* 33171626Scognet * 0x000000000 - 0x07FFFFFFF SDRAM 34171626Scognet * 0x090100000 - 0x0901FFFFF ATUe Outbound IO Window 35171626Scognet * 0x0F0000000 - 0x0F1FFFFFF Flash 36171626Scognet * 0x0F2000000 - 0x0F20FFFFF PCE1 37171626Scognet * 0x0F3000000 - 0x0FFCFFFFF Compact Flash 38171626Scognet * 0x0FFD00000 - 0x0FFDFFFFF MMR 39171626Scognet * 0x0FFFB0000 - 0x0FFFBFFFF ATU-X Outbound I/O Window 40171626Scognet * 0x0FFFD0000 - 0x0FFFDFFFF ATUe Outbound I/O Window 41171626Scognet * 0x100000000 - 0x1FFFFFFFF ATU-X outbound Memory Translation Window 42171626Scognet * 0x2FF000000 - 0x2FFFFFFFF ATUe Outbound Memory Translation Window 43171626Scognet */ 44171626Scognet 45171626Scognet#define IOP34X_VADDR 0xf0000000 46171626Scognet#define IOP34X_HWADDR 0xffd00000 47171626Scognet#define IOP34X_SIZE 0x100000 48171626Scognet 49172299Scognet#define IOP34X_ADMA0_OFFSET 0x00080000 50172299Scognet#define IOP34X_ADMA1_OFFSET 0x00080200 51172299Scognet#define IOP34X_ADMA2_OFFSET 0x00080400 52172299Scognet#define IOP34X_ADMA_SIZE 0x200 53172299Scognet 54172299Scognet 55172299Scognet/* ADMA Registers */ 56172299Scognet#define IOP34X_ADMA_CCR 0x0000 /* Channel Control Register */ 57172299Scognet#define IOP34X_ADMA_CSR 0x0004 /* Channel Status Register */ 58172299Scognet#define IOP34X_ADMA_DAR 0x0008 /* Descriptor Address Register */ 59172299Scognet#define IOP34X_ADMA_IPCR 0x0018 /* Internal Interface Parity Ctrl Reg */ 60172299Scognet#define IOP34X_ADMA_NDAR 0x0024 /* Next Descriptor Register */ 61172299Scognet#define IOP34X_ADMA_DCR 0x0028 /* Descriptor Control Register */ 62172299Scognet 63172299Scognet#define IOP34X_ADMA_IE (1 << 0) /* Interrupt enable */ 64172299Scognet#define IOP34X_ADMA_TR (1 << 1) /* Transfert Direction */ 65172299Scognet/* 66172299Scognet * Source Destination 67172299Scognet * 00 Host I/O Interface Local Memory 68172299Scognet * 01 Local Memory Host I/O Interface 69172299Scognet * 10 Internal Bus Local Memory 70172299Scognet * 11 Local Memory Internal Bus 71172299Scognet */ 72172299Scognet#define IOP34X_ADMA_SS (1 << 3) /* Source selection */ 73172299Scognet/* 0000: Data Transfer / CRC / Memory Block Fill */ 74172299Scognet#define IOP34X_ADMA_ZRBCE (1 << 7) /* Zero Result Buffer Check Enable */ 75172299Scognet#define IOP34X_ADMA_MBFE (1 << 8) /* Memory Block Fill Enable */ 76172299Scognet#define IOP34X_ADMA_CGE (1 << 9) /* CRC Generation enable */ 77172299Scognet#define IOP34X_ADMA_CTD (1 << 10) /* CRC Transfer disable */ 78172299Scognet#define IOP34X_ADMA_CSFD (1 << 11) /* CRC Seed fetch disable */ 79172299Scognet#define IOP34X_ADMA_SWBE (1 << 12) /* Status write back enable */ 80172299Scognet#define IOP34X_ADMA_ESE (1 << 13) /* Endian swap enable */ 81172299Scognet#define IOP34X_ADMA_PQUTE (1 << 16) /* P+Q Update Transfer Enable */ 82172299Scognet#define IOP34X_ADMA_DXE (1 << 17) /* Dual XOR Enable */ 83172299Scognet#define IOP34X_ADMA_PQTE (1 << 18) /* P+Q Transfer Enable */ 84172299Scognet#define IOP34X_ADMA_PTD (1 << 19) /* P Transfer Disable */ 85172299Scognet#define IOP34X_ADMA_ROE (1 << 30) /* Relaxed Ordering Enable */ 86172299Scognet#define IOP34X_ADMA_NSE (1 << 31) /* No Snoop Enable */ 87172299Scognet 88171626Scognet#define IOP34X_PBBAR0 0x81588 /* PBI Base Address Register 0 */ 89171626Scognet#define IOP34X_PBBAR0_ADDRMASK 0xfffff000 90171626Scognet#define IOP34X_PBBAR1 0x81590 91172297Scognet#define IOP34X_PCE1 0xF2000000 92172297Scognet#define IOP34X_PCE1_SIZE 0x00100000 93172297Scognet#define IOP34X_PCE1_VADDR 0xF1000000 94171626Scognet#define IOP34X_ESSTSR0 0x82188 95171626Scognet#define IOP34X_CONTROLLER_ONLY (1 << 14) 96171626Scognet#define IOP34X_INT_SEL_PCIX (1 << 15) 97171626Scognet#define IOP34X_PFR 0x82180 /* Processor Frequency Register */ 98171626Scognet#define IOP34X_FREQ_MASK ((1 << 16) | (1 << 17) | (1 << 18)) 99171626Scognet#define IOP34X_FREQ_600 (0) 100171626Scognet#define IOP34X_FREQ_667 (1 << 16) 101171626Scognet#define IOP34X_FREQ_800 (1 << 17) 102171626Scognet#define IOP34X_FREQ_833 ((1 << 17) | (1 << 16)) 103171626Scognet#define IOP34X_FREQ_1000 (1 << 18) 104171626Scognet#define IOP34X_FREQ_1200 ((1 << 16) | (1 << 18)) 105171626Scognet 106171626Scognet#define IOP34X_UART0_VADDR IOP34X_VADDR + 0x82300 107171626Scognet#define IOP34X_UART0_HWADDR IOP34X_HWADDR + 0x82300 108171626Scognet#define IOP34X_UART1_VADDR IOP34X_VADDR + 0x82340 109171626Scognet#define IOP34X_UART1_HWADDR IOP34X_HWADDR + 0x82340 110171626Scognet#define IOP34X_PBI_HWADDR 0xffd81580 111171626Scognet 112171626Scognet/* SDRAM Memory Controller */ 113171626Scognet#define SMC_SDBR 0x8180c /* Base Register */ 114171626Scognet#define SMC_SDBR_BASEADDR (1 << 27) 115171626Scognet#define SMC_SDBR_BASEADDR_MASK ((1 << 27) | (1 << 28) | (1 << 29) | (1 << 30) \ 116171626Scognet | (1 << 31)) 117171626Scognet#define SMC_SDUBR 0x81810 /* Upper Base Register */ 118171626Scognet#define SMC_SBSR 0x81814 /* SDRAM Bank Size Register */ 119171626Scognet#define SMC_SBSR_BANK_NB (1 << 2) /* Number of DDR Banks 120171626Scognet 0 => 2 Banks 121171626Scognet 1 => 1 Bank 122171626Scognet */ 123171626Scognet#define SMC_SBSR_BANK_SZ (1 << 27) /* SDRAM Bank Size : 124171626Scognet 0x00000 Empty 125171626Scognet 0x00001 128MB 126171626Scognet 0x00010 256MB 127171626Scognet 0x00100 512MB 128171626Scognet 0x01000 1GB 129171626Scognet */ 130171626Scognet#define SMC_SBSR_BANK_SZ_MASK ((1 << 27) | (1 << 28) | (1 << 29) | (1 << 30) \ 131171626Scognet | (1 << 31)) 132171626Scognet 133171626Scognet 134171626Scognet/* Two possible addresses for ATUe depending on configuration. */ 135171626Scognet#define IOP34X_ATUE_ADDR(esstrsr) ((((esstrsr) & (IOP34X_CONTROLLER_ONLY | \ 136171626Scognet IOP34X_INT_SEL_PCIX)) == (IOP34X_CONTROLLER_ONLY | IOP34X_INT_SEL_PCIX)) ? \ 137171626Scognet 0xffdc8000 : 0xffdcd000) 138171626Scognet 139171626Scognet/* Three possible addresses for ATU-X depending on configuration. */ 140171626Scognet#define IOP34X_ATUX_ADDR(esstrsr) (!((esstrsr) & IOP34X_CONTROLLER_ONLY) ? \ 141171626Scognet 0xffdcc000 : !((esstrsr) & IOP34X_INT_SEL_PCIX) ? 0xffdc8000 : 0xffdcd000) 142171626Scognet 143171626Scognet#define IOP34X_OIOBAR_SIZE 0x10000 144171626Scognet#define IOP34X_PCIX_OIOBAR 0xfffb0000 145171626Scognet#define IOP34X_PCIX_OIOBAR_VADDR 0xf01b0000 146171626Scognet#define IOP34X_PCIX_OMBAR 0x100000000 147171626Scognet#define IOP34X_PCIE_OIOBAR 0xfffd0000 148171626Scognet#define IOP34X_PCIE_OIOBAR_VADDR 0xf01d0000 149171626Scognet#define IOP34X_PCIE_OMBAR 0x200000000 150171626Scognet 151171626Scognet/* ATU Registers */ 152171626Scognet/* Common for ATU-X and ATUe */ 153171626Scognet#define ATU_VID 0x0000 /* ATU Vendor ID */ 154171626Scognet#define ATU_DID 0x0002 /* ATU Device ID */ 155171626Scognet#define ATU_CMD 0x0004 /* ATU Command Register */ 156171626Scognet#define ATU_SR 0x0006 /* ATU Status Register */ 157171626Scognet#define ATU_RID 0x0008 /* ATU Revision ID */ 158171626Scognet#define ATU_CCR 0x0009 /* ATU Class Code */ 159171626Scognet#define ATU_CLSR 0x000c /* ATU Cacheline Size */ 160171626Scognet#define ATU_LT 0x000d /* ATU Latency Timer */ 161171626Scognet#define ATU_HTR 0x000e /* ATU Header Type */ 162171626Scognet#define ATU_BISTR 0x000f /* ATU BIST Register */ 163171626Scognet#define ATU_IABAR0 0x0010 /* Inbound ATU Base Address register 0 */ 164171626Scognet#define ATU_IAUBAR0 0x0014 /* Inbound ATU Upper Base Address Register 0 */ 165171626Scognet#define ATU_IABAR1 0x0018 /* Inbound ATU Base Address Register 1 */ 166171626Scognet#define ATU_IAUBAR1 0x001c /* Inbound ATU Upper Base Address Register 1 */ 167171626Scognet#define ATU_IABAR2 0x0020 /* Inbound ATU Base Address Register 2 */ 168171626Scognet#define ATU_IAUBAR2 0x0024 /* Inbound ATU Upper Base Address Register 2 */ 169171626Scognet#define ATU_VSIR 0x002c /* ATU Subsystem Vendor ID Register */ 170171626Scognet#define ATU_SIR 0x002e /* ATU Subsystem ID Register */ 171171626Scognet#define ATU_ERBAR 0x0030 /* Expansion ROM Base Address Register */ 172171626Scognet#define ATU_CAPPTR 0x0034 /* ATU Capabilities Pointer Register */ 173171626Scognet#define ATU_ILR 0x003c /* ATU Interrupt Line Register */ 174171626Scognet#define ATU_IPR 0x003d /* ATU Interrupt Pin Register */ 175171626Scognet#define ATU_MGNT 0x003e /* ATU Minimum Grand Register */ 176171626Scognet#define ATU_MLAT 0x003f /* ATU Maximum Latency Register */ 177171626Scognet#define ATU_IALR0 0x0040 /* Inbound ATU Limit Register 0 */ 178171626Scognet#define ATU_IATVR0 0x0044 /* Inbound ATU Translate Value Register 0 */ 179171626Scognet#define ATU_IAUTVR0 0x0048 /* Inbound ATU Upper Translate Value Register 0*/ 180171626Scognet#define ATU_IALR1 0x004c /* Inbound ATU Limit Register 1 */ 181171626Scognet#define ATU_IATVR1 0x0050 /* Inbound ATU Translate Value Register 1 */ 182171626Scognet#define ATU_IAUTVR1 0x0054 /* Inbound ATU Upper Translate Value Register 1*/ 183171626Scognet#define ATU_IALR2 0x0058 /* Inbound ATU Limit Register 2 */ 184171626Scognet#define ATU_IATVR2 0x005c /* Inbound ATU Translate Value Register 2 */ 185171626Scognet#define ATU_IAUTVR2 0x0060 /* Inbound ATU Upper Translate Value Register 2*/ 186171626Scognet#define ATU_ERLR 0x0064 /* Expansion ROM Limit Register */ 187171626Scognet#define ATU_ERTVR 0x0068 /* Expansion ROM Translater Value Register */ 188171626Scognet#define ATU_ERUTVR 0x006c /* Expansion ROM Upper Translate Value Register*/ 189171626Scognet#define ATU_CR 0x0070 /* ATU Configuration Register */ 190171626Scognet#define ATU_CR_OUT_EN (1 << 1) 191171626Scognet#define ATU_PCSR 0x0074 /* PCI Configuration and Status Register */ 192171626Scognet#define PCIE_BUSNO(x) ((x & 0xff000000) >> 24) 193171626Scognet#define ATUX_CORE_RST ((1 << 30) | (1 << 31)) /* Core Processor Reset */ 194171626Scognet#define ATUX_P_RSTOUT (1 << 21) /* Central Resource PCI Bus Reset */ 195171626Scognet#define ATUE_CORE_RST ((1 << 9) | (1 << 8)) /* Core Processor Reset */ 196171626Scognet#define ATU_ISR 0x0078 /* ATU Interrupt Status Register */ 197171626Scognet#define ATUX_ISR_PIE (1 << 18) /* PCI Interface error */ 198171626Scognet#define ATUX_ISR_IBPR (1 << 16) /* Internal Bus Parity Error */ 199171626Scognet#define ATUX_ISR_DCE (1 << 14) /* Detected Correctable error */ 200171626Scognet#define ATUX_ISR_ISCE (1 << 13) /* Initiated Split Completion Error Msg */ 201171626Scognet#define ATUX_ISR_RSCE (1 << 12) /* Received Split Completion Error Msg */ 202171626Scognet#define ATUX_ISR_DPE (1 << 9) /* Detected Parity Error */ 203171626Scognet#define ATUX_ISR_IBMA (1 << 7) /* Internal Bus Master Abort */ 204171626Scognet#define ATUX_ISR_PMA (1 << 3) /* PCI Master Abort */ 205171626Scognet#define ATUX_ISR_PTAM (1 << 2) /* PCI Target Abort (Master) */ 206171626Scognet#define ATUX_ISR_PTAT (1 << 1) /* PCI Target Abort (Target) */ 207171626Scognet#define ATUX_ISR_PMPE (1 << 0) /* PCI Master Parity Error */ 208171626Scognet#define ATUX_ISR_ERRMSK (ATUX_ISR_PIE | ATUX_ISR_IBPR | ATUX_ISR_DCE | \ 209171626Scognet ATUX_ISR_ISCE | ATUX_ISR_RSCE | ATUX_ISR_DPE | ATUX_ISR_IBMA | ATUX_ISR_PMA\ 210171626Scognet | ATUX_ISR_PTAM | ATUX_ISR_PTAT | ATUX_ISR_PMPE) 211171626Scognet#define ATUE_ISR_HON (1 << 13) /* Halt on Error Interrupt */ 212171626Scognet#define ATUE_ISR_RSE (1 << 12) /* Root System Error Message */ 213171626Scognet#define ATUE_ISR_REM (1 << 11) /* Root Error Message */ 214171626Scognet#define ATUE_ISR_PIE (1 << 10) /* PCI Interface error */ 215171626Scognet#define ATUE_ISR_CEM (1 << 9) /* Correctable Error Message */ 216171626Scognet#define ATUE_ISR_UEM (1 << 8) /* Uncorrectable error message */ 217171626Scognet#define ATUE_ISR_CRS (1 << 7) /* Received Configuration Retry Status */ 218171626Scognet#define ATUE_ISR_IBMA (1 << 5) /* Internal Bus Master Abort */ 219171626Scognet#define ATUE_ISR_DPE (1 << 4) /* Detected Parity Error Interrupt */ 220171626Scognet#define ATUE_ISR_MAI (1 << 3) /* Received Master Abort Interrupt */ 221171626Scognet#define ATUE_ISR_STAI (1 << 2) /* Signaled Target Abort Interrupt */ 222171626Scognet#define ATUE_ISR_TAI (1 << 1) /* Received Target Abort Interrupt */ 223171626Scognet#define ATUE_ISR_MDPE (1 << 0) /* Master Data Parity Error Interrupt */ 224171626Scognet#define ATUE_ISR_ERRMSK (ATUE_ISR_HON | ATUE_ISR_RSE | ATUE_ISR_REM | \ 225171626Scognet ATUE_ISR_PIE | ATUE_ISR_CEM | ATUE_ISR_UEM | ATUE_ISR_CRS | ATUE_ISR_IBMA |\ 226171626Scognet ATUE_ISR_DPE | ATUE_ISR_MAI | ATUE_ISR_STAI | ATUE_ISR_TAI | ATUE_ISR_MDPE) 227171626Scognet#define ATU_IMR 0x007c /* ATU Interrupt Mask Register */ 228171626Scognet/* 0x0080 - 0x008f reserved */ 229171626Scognet#define ATU_VPDCID 0x0090 /* VPD Capability Identifier Register */ 230171626Scognet#define ATU_VPDNIP 0x0091 /* VPD Next Item Pointer Register */ 231171626Scognet#define ATU_VPDAR 0x0092 /* VPD Address Register */ 232171626Scognet#define ATU_VPDDR 0x0094 /* VPD Data Register */ 233171626Scognet#define ATU_PMCID 0x0098 /* PM Capability Identifier Register */ 234171626Scognet#define ATU_PMNIPR 0x0099 /* PM Next Item Pointer Register */ 235171626Scognet#define ATU_PMCR 0x009a /* ATU Power Management Capabilities Register */ 236171626Scognet#define ATU_PMCSR 0x009c /* ATU Power Management Control/Status Register*/ 237171626Scognet#define ATU_MSICIR 0x00a0 /* MSI Capability Identifier Register */ 238171626Scognet#define ATU_MSINIPR 0x00a1 /* MSI Next Item Pointer Register */ 239171626Scognet#define ATU_MCR 0x00a2 /* Message Control Register */ 240171626Scognet#define ATU_MAR 0x00a4 /* Message Address Register */ 241171626Scognet#define ATU_MUAR 0x00a8 /* Message Upper Address Register */ 242171626Scognet#define ATU_MDR 0x00ac /* Message Data Register */ 243171626Scognet#define ATU_PCIXSR 0x00d4 /* PCI-X Status Register */ 244171626Scognet#define PCIXSR_BUSNO(x) (((x) & 0xff00) >> 8) 245171626Scognet#define ATU_IABAR3 0x0200 /* Inbound ATU Base Address Register 3 */ 246171626Scognet#define ATU_IAUBAR3 0x0204 /* Inbound ATU Upper Base Address Register 3 */ 247171626Scognet#define ATU_IALR3 0x0208 /* Inbound ATU Limit Register 3 */ 248171626Scognet#define ATU_ITVR3 0x020c /* Inbound ATU Upper Translate Value Reg 3 */ 249171626Scognet#define ATU_OIOBAR 0x0300 /* Outbound I/O Base Address Register */ 250171626Scognet#define ATU_OIOWTVR 0x0304 /* Outbound I/O Window Translate Value Reg */ 251171626Scognet#define ATU_OUMBAR0 0x0308 /* Outbound Upper Memory Window base addr reg 0*/ 252171626Scognet#define ATU_OUMBAR_FUNC (28) 253171626Scognet#define ATU_OUMBAR_EN (1 << 31) 254171626Scognet#define ATU_OUMWTVR0 0x030c /* Outbound Upper 32bit Memory Window Translate Value Register 0 */ 255171626Scognet#define ATU_OUMBAR1 0x0310 /* Outbound Upper Memory Window base addr reg1*/ 256171626Scognet#define ATU_OUMWTVR1 0x0314 /* Outbound Upper 32bit Memory Window Translate Value Register 1 */ 257171626Scognet#define ATU_OUMBAR2 0x0318 /* Outbound Upper Memory Window base addr reg2*/ 258171626Scognet#define ATU_OUMWTVR2 0x031c /* Outbount Upper 32bit Memory Window Translate Value Register 2 */ 259171626Scognet#define ATU_OUMBAR3 0x0320 /* Outbound Upper Memory Window base addr reg3*/ 260171626Scognet#define ATU_OUMWTVR3 0x0324 /* Outbound Upper 32bit Memory Window Translate Value Register 3 */ 261171626Scognet 262171626Scognet/* ATU-X specific */ 263171626Scognet#define ATUX_OCCAR 0x0330 /* Outbound Configuration Cycle Address Reg */ 264171626Scognet#define ATUX_OCCDR 0x0334 /* Outbound Configuration Cycle Data Reg */ 265171626Scognet#define ATUX_OCCFN 0x0338 /* Outbound Configuration Cycle Function Number*/ 266171626Scognet/* ATUe specific */ 267171626Scognet#define ATUE_OCCAR 0x032c /* Outbound Configuration Cycle Address Reg */ 268171626Scognet#define ATUE_OCCDR 0x0330 /* Outbound Configuration Cycle Data Reg */ 269171626Scognet#define ATUE_OCCFN 0x0334 /* Outbound Configuration Cycle Function Number*/ 270171626Scognet/* Interrupts */ 271171626Scognet 272171626Scognet/* IINTRSRC0 */ 273171626Scognet#define ICU_INT_ADMA0_EOT (0) /* ADMA 0 End of transfer */ 274171626Scognet#define ICU_INT_ADMA0_EOC (1) /* ADMA 0 End of Chain */ 275171626Scognet#define ICU_INT_ADMA1_EOT (2) /* ADMA 1 End of transfer */ 276171626Scognet#define ICU_INT_ADMA1_EOC (3) /* ADMA 1 End of chain */ 277171626Scognet#define ICU_INT_ADMA2_EOT (4) /* ADMA 2 End of transfer */ 278171626Scognet#define ICU_INT_ADMA2_EOC (5) /* ADMA 2 end of chain */ 279171626Scognet#define ICU_INT_WDOG (6) /* Watchdog timer */ 280171626Scognet/* 7 Reserved */ 281171626Scognet#define ICU_INT_TIMER0 (8) /* Timer 0 */ 282171626Scognet#define ICU_INT_TIMER1 (9) /* Timer 1 */ 283171626Scognet#define ICU_INT_I2C0 (10) /* I2C bus interface 0 */ 284171626Scognet#define ICU_INT_I2C1 (11) /* I2C bus interface 1 */ 285171626Scognet#define ICU_INT_MU (12) /* Message Unit */ 286171626Scognet#define ICU_INT_MU_IPQ (13) /* Message unit inbound post queue */ 287171626Scognet#define ICU_INT_ATUE_IM (14) /* ATU-E inbound message */ 288171626Scognet#define ICU_INT_ATU_BIST (15) /* ATU/Start BIST */ 289171626Scognet#define ICU_INT_PMC (16) /* PMC */ 290171626Scognet#define ICU_INT_PMU (17) /* PMU */ 291171626Scognet#define ICU_INT_PC (18) /* Processor cache */ 292171626Scognet/* 19-23 Reserved */ 293171626Scognet#define ICU_INT_XINT0 (24) 294171626Scognet#define ICU_INT_XINT1 (25) 295171626Scognet#define ICU_INT_XINT2 (26) 296171626Scognet#define ICU_INT_XINT3 (27) 297171626Scognet#define ICU_INT_XINT4 (28) 298171626Scognet#define ICU_INT_XINT5 (29) 299171626Scognet#define ICU_INT_XINT6 (30) 300171626Scognet#define ICU_INT_XINT7 (31) 301171626Scognet/* IINTSRC1 */ 302171626Scognet#define ICU_INT_XINT8 (32) 303171626Scognet#define ICU_INT_XINT9 (33) 304171626Scognet#define ICU_INT_XINT10 (34) 305171626Scognet#define ICU_INT_XINT11 (35) 306171626Scognet#define ICU_INT_XINT12 (36) 307171626Scognet#define ICU_INT_XINT13 (37) 308171626Scognet#define ICU_INT_XINT14 (38) 309171626Scognet#define ICU_INT_XINT15 (39) 310171626Scognet/* 40-50 reserved */ 311171626Scognet#define ICU_INT_UART0 (51) /* UART 0 */ 312171626Scognet#define ICU_INT_UART1 (52) /* UART 1 */ 313171626Scognet#define ICU_INT_PBIUE (53) /* Peripheral bus interface unit error */ 314171626Scognet#define ICU_INT_ATUCRW (54) /* ATU Configuration register write */ 315171626Scognet#define ICU_INT_ATUE (55) /* ATU error */ 316171626Scognet#define ICU_INT_MCUE (56) /* Memory controller unit error */ 317171626Scognet#define ICU_INT_ADMA0E (57) /* ADMA Channel 0 error */ 318171626Scognet#define ICU_INT_ADMA1E (58) /* ADMA Channel 1 error */ 319171626Scognet#define ICU_INT_ADMA2E (59) /* ADMA Channel 2 error */ 320171626Scognet/* 60-61 reserved */ 321171626Scognet#define ICU_INT_MUE (62) /* Messaging Unit Error */ 322171626Scognet/* 63 reserved */ 323171626Scognet 324171626Scognet/* IINTSRC2 */ 325171626Scognet#define ICU_INT_IP (64) /* Inter-processor */ 326171626Scognet/* 65-93 reserved */ 327171626Scognet#define ICU_INT_SIBBE (94) /* South internal bus bridge error */ 328171626Scognet/* 95 reserved */ 329171626Scognet 330171626Scognet/* IINTSRC3 */ 331171626Scognet#define ICU_INT_I2C2 (96) /* I2C bus interface 2 */ 332171626Scognet#define ICU_INT_ATUE_BIST (97) /* ATU-E/Start BIST */ 333171626Scognet#define ICU_INT_ATUE_CRW (98) /* ATU-E Configuration register write */ 334171626Scognet#define ICU_INT_ATUEE (99) /* ATU-E Error */ 335171626Scognet#define ICU_INT_IMU (100) /* IMU */ 336171626Scognet/* 101-106 reserved */ 337171626Scognet#define ICU_INT_ATUE_MA (107) /* ATUE Interrupt message A */ 338171626Scognet#define ICU_INT_ATUE_MB (108) /* ATUE Interrupt message B */ 339171626Scognet#define ICU_INT_ATUE_MC (109) /* ATUE Interrupt message C */ 340171626Scognet#define ICU_INT_ATUE_MD (110) /* ATUE Interrupt message D */ 341171626Scognet#define ICU_INT_MU_MSIX_TW (111) /* MU MSI-X Table write */ 342171626Scognet/* 112 reserved */ 343171626Scognet#define ICU_INT_IMSI (113) /* Inbound MSI */ 344171626Scognet/* 114-126 reserved */ 345171626Scognet#define ICU_INT_HPI (127) /* HPI */ 346171626Scognet 347171626Scognet 348171626Scognet#endif /* I81342_REG_H_ */ 349