1/* 2 * Copyright 2007-2009 Analog Devices Inc. 3 * 4 * Licensed under the GPL-2 or later. 5 */ 6 7#ifndef _BF548_IRQ_H_ 8#define _BF548_IRQ_H_ 9 10#include <mach-common/irq.h> 11 12#define NR_PERI_INTS (3 * 32) 13 14#define IRQ_PLL_WAKEUP BFIN_IRQ(0) /* PLL Wakeup Interrupt */ 15#define IRQ_DMAC0_ERROR BFIN_IRQ(1) /* DMAC0 Status Interrupt */ 16#define IRQ_EPPI0_ERROR BFIN_IRQ(2) /* EPPI0 Error Interrupt */ 17#define IRQ_SPORT0_ERROR BFIN_IRQ(3) /* SPORT0 Error Interrupt */ 18#define IRQ_SPORT1_ERROR BFIN_IRQ(4) /* SPORT1 Error Interrupt */ 19#define IRQ_SPI0_ERROR BFIN_IRQ(5) /* SPI0 Status(Error) Interrupt */ 20#define IRQ_UART0_ERROR BFIN_IRQ(6) /* UART0 Status(Error) Interrupt */ 21#define IRQ_RTC BFIN_IRQ(7) /* RTC Interrupt */ 22#define IRQ_EPPI0 BFIN_IRQ(8) /* EPPI0 Interrupt (DMA12) */ 23#define IRQ_SPORT0_RX BFIN_IRQ(9) /* SPORT0 RX Interrupt (DMA0) */ 24#define IRQ_SPORT0_TX BFIN_IRQ(10) /* SPORT0 TX Interrupt (DMA1) */ 25#define IRQ_SPORT1_RX BFIN_IRQ(11) /* SPORT1 RX Interrupt (DMA2) */ 26#define IRQ_SPORT1_TX BFIN_IRQ(12) /* SPORT1 TX Interrupt (DMA3) */ 27#define IRQ_SPI0 BFIN_IRQ(13) /* SPI0 Interrupt (DMA4) */ 28#define IRQ_UART0_RX BFIN_IRQ(14) /* UART0 RX Interrupt (DMA6) */ 29#define IRQ_UART0_TX BFIN_IRQ(15) /* UART0 TX Interrupt (DMA7) */ 30#define IRQ_TIMER8 BFIN_IRQ(16) /* TIMER 8 Interrupt */ 31#define IRQ_TIMER9 BFIN_IRQ(17) /* TIMER 9 Interrupt */ 32#define IRQ_TIMER10 BFIN_IRQ(18) /* TIMER 10 Interrupt */ 33#define IRQ_PINT0 BFIN_IRQ(19) /* PINT0 Interrupt */ 34#define IRQ_PINT1 BFIN_IRQ(20) /* PINT1 Interrupt */ 35#define IRQ_MDMAS0 BFIN_IRQ(21) /* MDMA Stream 0 Interrupt */ 36#define IRQ_MDMAS1 BFIN_IRQ(22) /* MDMA Stream 1 Interrupt */ 37#define IRQ_WATCH BFIN_IRQ(23) /* Watchdog Interrupt */ 38#define IRQ_DMAC1_ERROR BFIN_IRQ(24) /* DMAC1 Status (Error) Interrupt */ 39#define IRQ_SPORT2_ERROR BFIN_IRQ(25) /* SPORT2 Error Interrupt */ 40#define IRQ_SPORT3_ERROR BFIN_IRQ(26) /* SPORT3 Error Interrupt */ 41#define IRQ_MXVR_DATA BFIN_IRQ(27) /* MXVR Data Interrupt */ 42#define IRQ_SPI1_ERROR BFIN_IRQ(28) /* SPI1 Status (Error) Interrupt */ 43#define IRQ_SPI2_ERROR BFIN_IRQ(29) /* SPI2 Status (Error) Interrupt */ 44#define IRQ_UART1_ERROR BFIN_IRQ(30) /* UART1 Status (Error) Interrupt */ 45#define IRQ_UART2_ERROR BFIN_IRQ(31) /* UART2 Status (Error) Interrupt */ 46#define IRQ_CAN0_ERROR BFIN_IRQ(32) /* CAN0 Status (Error) Interrupt */ 47#define IRQ_SPORT2_RX BFIN_IRQ(33) /* SPORT2 RX (DMA18) Interrupt */ 48#define IRQ_SPORT2_TX BFIN_IRQ(34) /* SPORT2 TX (DMA19) Interrupt */ 49#define IRQ_SPORT3_RX BFIN_IRQ(35) /* SPORT3 RX (DMA20) Interrupt */ 50#define IRQ_SPORT3_TX BFIN_IRQ(36) /* SPORT3 TX (DMA21) Interrupt */ 51#define IRQ_EPPI1 BFIN_IRQ(37) /* EPP1 (DMA13) Interrupt */ 52#define IRQ_EPPI2 BFIN_IRQ(38) /* EPP2 (DMA14) Interrupt */ 53#define IRQ_SPI1 BFIN_IRQ(39) /* SPI1 (DMA5) Interrupt */ 54#define IRQ_SPI2 BFIN_IRQ(40) /* SPI2 (DMA23) Interrupt */ 55#define IRQ_UART1_RX BFIN_IRQ(41) /* UART1 RX (DMA8) Interrupt */ 56#define IRQ_UART1_TX BFIN_IRQ(42) /* UART1 TX (DMA9) Interrupt */ 57#define IRQ_ATAPI_RX BFIN_IRQ(43) /* ATAPI RX (DMA10) Interrupt */ 58#define IRQ_ATAPI_TX BFIN_IRQ(44) /* ATAPI TX (DMA11) Interrupt */ 59#define IRQ_TWI0 BFIN_IRQ(45) /* TWI0 Interrupt */ 60#define IRQ_TWI1 BFIN_IRQ(46) /* TWI1 Interrupt */ 61#define IRQ_CAN0_RX BFIN_IRQ(47) /* CAN0 Receive Interrupt */ 62#define IRQ_CAN0_TX BFIN_IRQ(48) /* CAN0 Transmit Interrupt */ 63#define IRQ_MDMAS2 BFIN_IRQ(49) /* MDMA Stream 2 Interrupt */ 64#define IRQ_MDMAS3 BFIN_IRQ(50) /* MDMA Stream 3 Interrupt */ 65#define IRQ_MXVR_ERROR BFIN_IRQ(51) /* MXVR Status (Error) Interrupt */ 66#define IRQ_MXVR_MSG BFIN_IRQ(52) /* MXVR Message Interrupt */ 67#define IRQ_MXVR_PKT BFIN_IRQ(53) /* MXVR Packet Interrupt */ 68#define IRQ_EPPI1_ERROR BFIN_IRQ(54) /* EPPI1 Error Interrupt */ 69#define IRQ_EPPI2_ERROR BFIN_IRQ(55) /* EPPI2 Error Interrupt */ 70#define IRQ_UART3_ERROR BFIN_IRQ(56) /* UART3 Status (Error) Interrupt */ 71#define IRQ_HOST_ERROR BFIN_IRQ(57) /* HOST Status (Error) Interrupt */ 72#define IRQ_PIXC_ERROR BFIN_IRQ(59) /* PIXC Status (Error) Interrupt */ 73#define IRQ_NFC_ERROR BFIN_IRQ(60) /* NFC Error Interrupt */ 74#define IRQ_ATAPI_ERROR BFIN_IRQ(61) /* ATAPI Error Interrupt */ 75#define IRQ_CAN1_ERROR BFIN_IRQ(62) /* CAN1 Status (Error) Interrupt */ 76#define IRQ_HS_DMA_ERROR BFIN_IRQ(63) /* Handshake DMA Status Interrupt */ 77#define IRQ_PIXC_IN0 BFIN_IRQ(64) /* PIXC IN0 (DMA15) Interrupt */ 78#define IRQ_PIXC_IN1 BFIN_IRQ(65) /* PIXC IN1 (DMA16) Interrupt */ 79#define IRQ_PIXC_OUT BFIN_IRQ(66) /* PIXC OUT (DMA17) Interrupt */ 80#define IRQ_SDH BFIN_IRQ(67) /* SDH/NFC (DMA22) Interrupt */ 81#define IRQ_CNT BFIN_IRQ(68) /* CNT Interrupt */ 82#define IRQ_KEY BFIN_IRQ(69) /* KEY Interrupt */ 83#define IRQ_CAN1_RX BFIN_IRQ(70) /* CAN1 RX Interrupt */ 84#define IRQ_CAN1_TX BFIN_IRQ(71) /* CAN1 TX Interrupt */ 85#define IRQ_SDH_MASK0 BFIN_IRQ(72) /* SDH Mask 0 Interrupt */ 86#define IRQ_SDH_MASK1 BFIN_IRQ(73) /* SDH Mask 1 Interrupt */ 87#define IRQ_USB_INT0 BFIN_IRQ(75) /* USB INT0 Interrupt */ 88#define IRQ_USB_INT1 BFIN_IRQ(76) /* USB INT1 Interrupt */ 89#define IRQ_USB_INT2 BFIN_IRQ(77) /* USB INT2 Interrupt */ 90#define IRQ_USB_DMA BFIN_IRQ(78) /* USB DMA Interrupt */ 91#define IRQ_OPTSEC BFIN_IRQ(79) /* OTPSEC Interrupt */ 92#define IRQ_TIMER0 BFIN_IRQ(86) /* Timer 0 Interrupt */ 93#define IRQ_TIMER1 BFIN_IRQ(87) /* Timer 1 Interrupt */ 94#define IRQ_TIMER2 BFIN_IRQ(88) /* Timer 2 Interrupt */ 95#define IRQ_TIMER3 BFIN_IRQ(89) /* Timer 3 Interrupt */ 96#define IRQ_TIMER4 BFIN_IRQ(90) /* Timer 4 Interrupt */ 97#define IRQ_TIMER5 BFIN_IRQ(91) /* Timer 5 Interrupt */ 98#define IRQ_TIMER6 BFIN_IRQ(92) /* Timer 6 Interrupt */ 99#define IRQ_TIMER7 BFIN_IRQ(93) /* Timer 7 Interrupt */ 100#define IRQ_PINT2 BFIN_IRQ(94) /* PINT2 Interrupt */ 101#define IRQ_PINT3 BFIN_IRQ(95) /* PINT3 Interrupt */ 102 103#define SYS_IRQS IRQ_PINT3 104 105#define BFIN_PA_IRQ(x) ((x) + SYS_IRQS + 1) 106#define IRQ_PA0 BFIN_PA_IRQ(0) 107#define IRQ_PA1 BFIN_PA_IRQ(1) 108#define IRQ_PA2 BFIN_PA_IRQ(2) 109#define IRQ_PA3 BFIN_PA_IRQ(3) 110#define IRQ_PA4 BFIN_PA_IRQ(4) 111#define IRQ_PA5 BFIN_PA_IRQ(5) 112#define IRQ_PA6 BFIN_PA_IRQ(6) 113#define IRQ_PA7 BFIN_PA_IRQ(7) 114#define IRQ_PA8 BFIN_PA_IRQ(8) 115#define IRQ_PA9 BFIN_PA_IRQ(9) 116#define IRQ_PA10 BFIN_PA_IRQ(10) 117#define IRQ_PA11 BFIN_PA_IRQ(11) 118#define IRQ_PA12 BFIN_PA_IRQ(12) 119#define IRQ_PA13 BFIN_PA_IRQ(13) 120#define IRQ_PA14 BFIN_PA_IRQ(14) 121#define IRQ_PA15 BFIN_PA_IRQ(15) 122 123#define BFIN_PB_IRQ(x) ((x) + IRQ_PA15 + 1) 124#define IRQ_PB0 BFIN_PB_IRQ(0) 125#define IRQ_PB1 BFIN_PB_IRQ(1) 126#define IRQ_PB2 BFIN_PB_IRQ(2) 127#define IRQ_PB3 BFIN_PB_IRQ(3) 128#define IRQ_PB4 BFIN_PB_IRQ(4) 129#define IRQ_PB5 BFIN_PB_IRQ(5) 130#define IRQ_PB6 BFIN_PB_IRQ(6) 131#define IRQ_PB7 BFIN_PB_IRQ(7) 132#define IRQ_PB8 BFIN_PB_IRQ(8) 133#define IRQ_PB9 BFIN_PB_IRQ(9) 134#define IRQ_PB10 BFIN_PB_IRQ(10) 135#define IRQ_PB11 BFIN_PB_IRQ(11) 136#define IRQ_PB12 BFIN_PB_IRQ(12) 137#define IRQ_PB13 BFIN_PB_IRQ(13) 138#define IRQ_PB14 BFIN_PB_IRQ(14) 139#define IRQ_PB15 BFIN_PB_IRQ(15) /* N/A */ 140 141#define BFIN_PC_IRQ(x) ((x) + IRQ_PB15 + 1) 142#define IRQ_PC0 BFIN_PC_IRQ(0) 143#define IRQ_PC1 BFIN_PC_IRQ(1) 144#define IRQ_PC2 BFIN_PC_IRQ(2) 145#define IRQ_PC3 BFIN_PC_IRQ(3) 146#define IRQ_PC4 BFIN_PC_IRQ(4) 147#define IRQ_PC5 BFIN_PC_IRQ(5) 148#define IRQ_PC6 BFIN_PC_IRQ(6) 149#define IRQ_PC7 BFIN_PC_IRQ(7) 150#define IRQ_PC8 BFIN_PC_IRQ(8) 151#define IRQ_PC9 BFIN_PC_IRQ(9) 152#define IRQ_PC10 BFIN_PC_IRQ(10) 153#define IRQ_PC11 BFIN_PC_IRQ(11) 154#define IRQ_PC12 BFIN_PC_IRQ(12) 155#define IRQ_PC13 BFIN_PC_IRQ(13) 156#define IRQ_PC14 BFIN_PC_IRQ(14) /* N/A */ 157#define IRQ_PC15 BFIN_PC_IRQ(15) /* N/A */ 158 159#define BFIN_PD_IRQ(x) ((x) + IRQ_PC15 + 1) 160#define IRQ_PD0 BFIN_PD_IRQ(0) 161#define IRQ_PD1 BFIN_PD_IRQ(1) 162#define IRQ_PD2 BFIN_PD_IRQ(2) 163#define IRQ_PD3 BFIN_PD_IRQ(3) 164#define IRQ_PD4 BFIN_PD_IRQ(4) 165#define IRQ_PD5 BFIN_PD_IRQ(5) 166#define IRQ_PD6 BFIN_PD_IRQ(6) 167#define IRQ_PD7 BFIN_PD_IRQ(7) 168#define IRQ_PD8 BFIN_PD_IRQ(8) 169#define IRQ_PD9 BFIN_PD_IRQ(9) 170#define IRQ_PD10 BFIN_PD_IRQ(10) 171#define IRQ_PD11 BFIN_PD_IRQ(11) 172#define IRQ_PD12 BFIN_PD_IRQ(12) 173#define IRQ_PD13 BFIN_PD_IRQ(13) 174#define IRQ_PD14 BFIN_PD_IRQ(14) 175#define IRQ_PD15 BFIN_PD_IRQ(15) 176 177#define BFIN_PE_IRQ(x) ((x) + IRQ_PD15 + 1) 178#define IRQ_PE0 BFIN_PE_IRQ(0) 179#define IRQ_PE1 BFIN_PE_IRQ(1) 180#define IRQ_PE2 BFIN_PE_IRQ(2) 181#define IRQ_PE3 BFIN_PE_IRQ(3) 182#define IRQ_PE4 BFIN_PE_IRQ(4) 183#define IRQ_PE5 BFIN_PE_IRQ(5) 184#define IRQ_PE6 BFIN_PE_IRQ(6) 185#define IRQ_PE7 BFIN_PE_IRQ(7) 186#define IRQ_PE8 BFIN_PE_IRQ(8) 187#define IRQ_PE9 BFIN_PE_IRQ(9) 188#define IRQ_PE10 BFIN_PE_IRQ(10) 189#define IRQ_PE11 BFIN_PE_IRQ(11) 190#define IRQ_PE12 BFIN_PE_IRQ(12) 191#define IRQ_PE13 BFIN_PE_IRQ(13) 192#define IRQ_PE14 BFIN_PE_IRQ(14) 193#define IRQ_PE15 BFIN_PE_IRQ(15) 194 195#define BFIN_PF_IRQ(x) ((x) + IRQ_PE15 + 1) 196#define IRQ_PF0 BFIN_PF_IRQ(0) 197#define IRQ_PF1 BFIN_PF_IRQ(1) 198#define IRQ_PF2 BFIN_PF_IRQ(2) 199#define IRQ_PF3 BFIN_PF_IRQ(3) 200#define IRQ_PF4 BFIN_PF_IRQ(4) 201#define IRQ_PF5 BFIN_PF_IRQ(5) 202#define IRQ_PF6 BFIN_PF_IRQ(6) 203#define IRQ_PF7 BFIN_PF_IRQ(7) 204#define IRQ_PF8 BFIN_PF_IRQ(8) 205#define IRQ_PF9 BFIN_PF_IRQ(9) 206#define IRQ_PF10 BFIN_PF_IRQ(10) 207#define IRQ_PF11 BFIN_PF_IRQ(11) 208#define IRQ_PF12 BFIN_PF_IRQ(12) 209#define IRQ_PF13 BFIN_PF_IRQ(13) 210#define IRQ_PF14 BFIN_PF_IRQ(14) 211#define IRQ_PF15 BFIN_PF_IRQ(15) 212 213#define BFIN_PG_IRQ(x) ((x) + IRQ_PF15 + 1) 214#define IRQ_PG0 BFIN_PG_IRQ(0) 215#define IRQ_PG1 BFIN_PG_IRQ(1) 216#define IRQ_PG2 BFIN_PG_IRQ(2) 217#define IRQ_PG3 BFIN_PG_IRQ(3) 218#define IRQ_PG4 BFIN_PG_IRQ(4) 219#define IRQ_PG5 BFIN_PG_IRQ(5) 220#define IRQ_PG6 BFIN_PG_IRQ(6) 221#define IRQ_PG7 BFIN_PG_IRQ(7) 222#define IRQ_PG8 BFIN_PG_IRQ(8) 223#define IRQ_PG9 BFIN_PG_IRQ(9) 224#define IRQ_PG10 BFIN_PG_IRQ(10) 225#define IRQ_PG11 BFIN_PG_IRQ(11) 226#define IRQ_PG12 BFIN_PG_IRQ(12) 227#define IRQ_PG13 BFIN_PG_IRQ(13) 228#define IRQ_PG14 BFIN_PG_IRQ(14) 229#define IRQ_PG15 BFIN_PG_IRQ(15) 230 231#define BFIN_PH_IRQ(x) ((x) + IRQ_PG15 + 1) 232#define IRQ_PH0 BFIN_PH_IRQ(0) 233#define IRQ_PH1 BFIN_PH_IRQ(1) 234#define IRQ_PH2 BFIN_PH_IRQ(2) 235#define IRQ_PH3 BFIN_PH_IRQ(3) 236#define IRQ_PH4 BFIN_PH_IRQ(4) 237#define IRQ_PH5 BFIN_PH_IRQ(5) 238#define IRQ_PH6 BFIN_PH_IRQ(6) 239#define IRQ_PH7 BFIN_PH_IRQ(7) 240#define IRQ_PH8 BFIN_PH_IRQ(8) 241#define IRQ_PH9 BFIN_PH_IRQ(9) 242#define IRQ_PH10 BFIN_PH_IRQ(10) 243#define IRQ_PH11 BFIN_PH_IRQ(11) 244#define IRQ_PH12 BFIN_PH_IRQ(12) 245#define IRQ_PH13 BFIN_PH_IRQ(13) 246#define IRQ_PH14 BFIN_PH_IRQ(14) /* N/A */ 247#define IRQ_PH15 BFIN_PH_IRQ(15) /* N/A */ 248 249#define BFIN_PI_IRQ(x) ((x) + IRQ_PH15 + 1) 250#define IRQ_PI0 BFIN_PI_IRQ(0) 251#define IRQ_PI1 BFIN_PI_IRQ(1) 252#define IRQ_PI2 BFIN_PI_IRQ(2) 253#define IRQ_PI3 BFIN_PI_IRQ(3) 254#define IRQ_PI4 BFIN_PI_IRQ(4) 255#define IRQ_PI5 BFIN_PI_IRQ(5) 256#define IRQ_PI6 BFIN_PI_IRQ(6) 257#define IRQ_PI7 BFIN_PI_IRQ(7) 258#define IRQ_PI8 BFIN_PI_IRQ(8) 259#define IRQ_PI9 BFIN_PI_IRQ(9) 260#define IRQ_PI10 BFIN_PI_IRQ(10) 261#define IRQ_PI11 BFIN_PI_IRQ(11) 262#define IRQ_PI12 BFIN_PI_IRQ(12) 263#define IRQ_PI13 BFIN_PI_IRQ(13) 264#define IRQ_PI14 BFIN_PI_IRQ(14) 265#define IRQ_PI15 BFIN_PI_IRQ(15) 266 267#define BFIN_PJ_IRQ(x) ((x) + IRQ_PI15 + 1) 268#define IRQ_PJ0 BFIN_PJ_IRQ(0) 269#define IRQ_PJ1 BFIN_PJ_IRQ(1) 270#define IRQ_PJ2 BFIN_PJ_IRQ(2) 271#define IRQ_PJ3 BFIN_PJ_IRQ(3) 272#define IRQ_PJ4 BFIN_PJ_IRQ(4) 273#define IRQ_PJ5 BFIN_PJ_IRQ(5) 274#define IRQ_PJ6 BFIN_PJ_IRQ(6) 275#define IRQ_PJ7 BFIN_PJ_IRQ(7) 276#define IRQ_PJ8 BFIN_PJ_IRQ(8) 277#define IRQ_PJ9 BFIN_PJ_IRQ(9) 278#define IRQ_PJ10 BFIN_PJ_IRQ(10) 279#define IRQ_PJ11 BFIN_PJ_IRQ(11) 280#define IRQ_PJ12 BFIN_PJ_IRQ(12) 281#define IRQ_PJ13 BFIN_PJ_IRQ(13) 282#define IRQ_PJ14 BFIN_PJ_IRQ(14) /* N/A */ 283#define IRQ_PJ15 BFIN_PJ_IRQ(15) /* N/A */ 284 285#define GPIO_IRQ_BASE IRQ_PA0 286 287#define NR_MACH_IRQS (IRQ_PJ15 + 1) 288 289/* For compatibility reasons with existing code */ 290 291#define IRQ_DMAC0_ERR IRQ_DMAC0_ERROR 292#define IRQ_EPPI0_ERR IRQ_EPPI0_ERROR 293#define IRQ_SPORT0_ERR IRQ_SPORT0_ERROR 294#define IRQ_SPORT1_ERR IRQ_SPORT1_ERROR 295#define IRQ_SPI0_ERR IRQ_SPI0_ERROR 296#define IRQ_UART0_ERR IRQ_UART0_ERROR 297#define IRQ_DMAC1_ERR IRQ_DMAC1_ERROR 298#define IRQ_SPORT2_ERR IRQ_SPORT2_ERROR 299#define IRQ_SPORT3_ERR IRQ_SPORT3_ERROR 300#define IRQ_SPI1_ERR IRQ_SPI1_ERROR 301#define IRQ_SPI2_ERR IRQ_SPI2_ERROR 302#define IRQ_UART1_ERR IRQ_UART1_ERROR 303#define IRQ_UART2_ERR IRQ_UART2_ERROR 304#define IRQ_CAN0_ERR IRQ_CAN0_ERROR 305#define IRQ_MXVR_ERR IRQ_MXVR_ERROR 306#define IRQ_EPPI1_ERR IRQ_EPPI1_ERROR 307#define IRQ_EPPI2_ERR IRQ_EPPI2_ERROR 308#define IRQ_UART3_ERR IRQ_UART3_ERROR 309#define IRQ_HOST_ERR IRQ_HOST_ERROR 310#define IRQ_PIXC_ERR IRQ_PIXC_ERROR 311#define IRQ_NFC_ERR IRQ_NFC_ERROR 312#define IRQ_ATAPI_ERR IRQ_ATAPI_ERROR 313#define IRQ_CAN1_ERR IRQ_CAN1_ERROR 314#define IRQ_HS_DMA_ERR IRQ_HS_DMA_ERROR 315 316/* IAR0 BIT FIELDS */ 317#define IRQ_PLL_WAKEUP_POS 0 318#define IRQ_DMAC0_ERR_POS 4 319#define IRQ_EPPI0_ERR_POS 8 320#define IRQ_SPORT0_ERR_POS 12 321#define IRQ_SPORT1_ERR_POS 16 322#define IRQ_SPI0_ERR_POS 20 323#define IRQ_UART0_ERR_POS 24 324#define IRQ_RTC_POS 28 325 326/* IAR1 BIT FIELDS */ 327#define IRQ_EPPI0_POS 0 328#define IRQ_SPORT0_RX_POS 4 329#define IRQ_SPORT0_TX_POS 8 330#define IRQ_SPORT1_RX_POS 12 331#define IRQ_SPORT1_TX_POS 16 332#define IRQ_SPI0_POS 20 333#define IRQ_UART0_RX_POS 24 334#define IRQ_UART0_TX_POS 28 335 336/* IAR2 BIT FIELDS */ 337#define IRQ_TIMER8_POS 0 338#define IRQ_TIMER9_POS 4 339#define IRQ_TIMER10_POS 8 340#define IRQ_PINT0_POS 12 341#define IRQ_PINT1_POS 16 342#define IRQ_MDMAS0_POS 20 343#define IRQ_MDMAS1_POS 24 344#define IRQ_WATCH_POS 28 345 346/* IAR3 BIT FIELDS */ 347#define IRQ_DMAC1_ERR_POS 0 348#define IRQ_SPORT2_ERR_POS 4 349#define IRQ_SPORT3_ERR_POS 8 350#define IRQ_MXVR_DATA_POS 12 351#define IRQ_SPI1_ERR_POS 16 352#define IRQ_SPI2_ERR_POS 20 353#define IRQ_UART1_ERR_POS 24 354#define IRQ_UART2_ERR_POS 28 355 356/* IAR4 BIT FILEDS */ 357#define IRQ_CAN0_ERR_POS 0 358#define IRQ_SPORT2_RX_POS 4 359#define IRQ_UART2_RX_POS 4 360#define IRQ_SPORT2_TX_POS 8 361#define IRQ_UART2_TX_POS 8 362#define IRQ_SPORT3_RX_POS 12 363#define IRQ_UART3_RX_POS 12 364#define IRQ_SPORT3_TX_POS 16 365#define IRQ_UART3_TX_POS 16 366#define IRQ_EPPI1_POS 20 367#define IRQ_EPPI2_POS 24 368#define IRQ_SPI1_POS 28 369 370/* IAR5 BIT FIELDS */ 371#define IRQ_SPI2_POS 0 372#define IRQ_UART1_RX_POS 4 373#define IRQ_UART1_TX_POS 8 374#define IRQ_ATAPI_RX_POS 12 375#define IRQ_ATAPI_TX_POS 16 376#define IRQ_TWI0_POS 20 377#define IRQ_TWI1_POS 24 378#define IRQ_CAN0_RX_POS 28 379 380/* IAR6 BIT FIELDS */ 381#define IRQ_CAN0_TX_POS 0 382#define IRQ_MDMAS2_POS 4 383#define IRQ_MDMAS3_POS 8 384#define IRQ_MXVR_ERR_POS 12 385#define IRQ_MXVR_MSG_POS 16 386#define IRQ_MXVR_PKT_POS 20 387#define IRQ_EPPI1_ERR_POS 24 388#define IRQ_EPPI2_ERR_POS 28 389 390/* IAR7 BIT FIELDS */ 391#define IRQ_UART3_ERR_POS 0 392#define IRQ_HOST_ERR_POS 4 393#define IRQ_PIXC_ERR_POS 12 394#define IRQ_NFC_ERR_POS 16 395#define IRQ_ATAPI_ERR_POS 20 396#define IRQ_CAN1_ERR_POS 24 397#define IRQ_HS_DMA_ERR_POS 28 398 399/* IAR8 BIT FIELDS */ 400#define IRQ_PIXC_IN0_POS 0 401#define IRQ_PIXC_IN1_POS 4 402#define IRQ_PIXC_OUT_POS 8 403#define IRQ_SDH_POS 12 404#define IRQ_CNT_POS 16 405#define IRQ_KEY_POS 20 406#define IRQ_CAN1_RX_POS 24 407#define IRQ_CAN1_TX_POS 28 408 409/* IAR9 BIT FIELDS */ 410#define IRQ_SDH_MASK0_POS 0 411#define IRQ_SDH_MASK1_POS 4 412#define IRQ_USB_INT0_POS 12 413#define IRQ_USB_INT1_POS 16 414#define IRQ_USB_INT2_POS 20 415#define IRQ_USB_DMA_POS 24 416#define IRQ_OTPSEC_POS 28 417 418/* IAR10 BIT FIELDS */ 419#define IRQ_TIMER0_POS 24 420#define IRQ_TIMER1_POS 28 421 422/* IAR11 BIT FIELDS */ 423#define IRQ_TIMER2_POS 0 424#define IRQ_TIMER3_POS 4 425#define IRQ_TIMER4_POS 8 426#define IRQ_TIMER5_POS 12 427#define IRQ_TIMER6_POS 16 428#define IRQ_TIMER7_POS 20 429#define IRQ_PINT2_POS 24 430#define IRQ_PINT3_POS 28 431 432#ifndef __ASSEMBLY__ 433#include <linux/types.h> 434 435/* 436 * gpio pint registers layout 437 */ 438struct bfin_pint_regs { 439 u32 mask_set; 440 u32 mask_clear; 441 u32 request; 442 u32 assign; 443 u32 edge_set; 444 u32 edge_clear; 445 u32 invert_set; 446 u32 invert_clear; 447 u32 pinstate; 448 u32 latch; 449 u32 __pad0[2]; 450}; 451 452#endif 453 454#endif 455