xref: /nrf52832-nimble/rt-thread/libcpu/arm/am335x/am33xx.h (revision 104654410c56c573564690304ae786df310c91fc)
1*10465441SEvalZero /*
2*10465441SEvalZero  * Copyright (c) 2006-2018, RT-Thread Development Team
3*10465441SEvalZero  *
4*10465441SEvalZero  * SPDX-License-Identifier: Apache-2.0
5*10465441SEvalZero  *
6*10465441SEvalZero  * Change Logs:
7*10465441SEvalZero  * Date           Author       Notes
8*10465441SEvalZero  */
9*10465441SEvalZero #ifndef __AM33XX_H__
10*10465441SEvalZero #define __AM33XX_H__
11*10465441SEvalZero 
12*10465441SEvalZero #define REG32(x) 	(*((volatile unsigned int *)(x)))
13*10465441SEvalZero #define REG16(x) 	(*((volatile unsigned short *)(x)))
14*10465441SEvalZero 
15*10465441SEvalZero /** Cache Line size in ARM Cortex-A8.                                         */
16*10465441SEvalZero #define AM33XX_CACHELINE_SIZE                   (64)
17*10465441SEvalZero 
18*10465441SEvalZero /** @brief Base address of AINTC memory mapped registers                      */
19*10465441SEvalZero #define AM33XX_AINTC_REGS                       (0x48200000)
20*10465441SEvalZero 
21*10465441SEvalZero 
22*10465441SEvalZero /** @brief Base addresses of control module registers                         */
23*10465441SEvalZero #define AM33XX_CTLM_REGS                        (0x44e10000)
24*10465441SEvalZero 
25*10465441SEvalZero /** @brief Base addresses of USB memory mapped registers                     */
26*10465441SEvalZero #define AM33XX_USB_0_BASE                       (0x47401400)
27*10465441SEvalZero #define AM33XX_USB_1_BASE                       (0x47401C00)
28*10465441SEvalZero /** @brief Base addresses of SPI memory mapped registers                      */
29*10465441SEvalZero #define AM33XX_SPI_0_REGS                       (0x48030000)
30*10465441SEvalZero #define AM33XX_SPI_1_REGS                       (0x481A0000)
31*10465441SEvalZero 
32*10465441SEvalZero /** @brief Base addresses of GPIO memory mapped registers                     */
33*10465441SEvalZero #define AM33XX_GPIO_0_REGS                      (0x44E07000)
34*10465441SEvalZero #define AM33XX_GPIO_1_REGS                      (0x4804C000)
35*10465441SEvalZero #define AM33XX_GPIO_2_REGS                      (0x481AC000)
36*10465441SEvalZero #define AM33XX_GPIO_3_REGS                      (0x481AE000)
37*10465441SEvalZero 
38*10465441SEvalZero /** @brief Base addresses of DMTIMER memory mapped registers                  */
39*10465441SEvalZero #define AM33XX_DMTIMER_0_REGS                   (0x44E05000)
40*10465441SEvalZero #define AM33XX_DMTIMER_1_REGS                   (0x44E31000)
41*10465441SEvalZero #define AM33XX_DMTIMER_2_REGS                   (0x48040000)
42*10465441SEvalZero #define AM33XX_DMTIMER_3_REGS                   (0x48042000)
43*10465441SEvalZero #define AM33XX_DMTIMER_4_REGS                   (0x48044000)
44*10465441SEvalZero #define AM33XX_DMTIMER_5_REGS                   (0x48046000)
45*10465441SEvalZero #define AM33XX_DMTIMER_6_REGS                   (0x48048000)
46*10465441SEvalZero #define AM33XX_DMTIMER_7_REGS                   (0x4804A000)
47*10465441SEvalZero 
48*10465441SEvalZero /** @brief Base address of MMC memory mapped registers                        */
49*10465441SEvalZero #define AM33XX_MMCHS_0_REGS                     (0x48060000)
50*10465441SEvalZero #define AM33XX_MMCHS_1_REGS                     (0x481D8000)
51*10465441SEvalZero #define AM33XX_MMCHS_2_REGS                     (0x47810000)
52*10465441SEvalZero 
53*10465441SEvalZero /** @brief Base address of GPMC memory mapped registers                       */
54*10465441SEvalZero #define AM33XX_GPMC_0_REGS                      (0x50000000)
55*10465441SEvalZero 
56*10465441SEvalZero /** @brief Base address of GPMC memory mapped registers                       */
57*10465441SEvalZero #define AM33XX_ELM_0_REGS                       (0x48080000)
58*10465441SEvalZero 
59*10465441SEvalZero /** @brief Base address of I2C memory mapped registers                        */
60*10465441SEvalZero #define AM33XX_I2C_0_REGS                       (0x44E0B000)
61*10465441SEvalZero #define AM33XX_I2C_1_REGS                       (0x4802A000)
62*10465441SEvalZero #define AM33XX_I2C_2_REGS                       (0x4819C000)
63*10465441SEvalZero 
64*10465441SEvalZero /** @brief Base address of WDT memory mapped registers                        */
65*10465441SEvalZero #define AM33XX_WDT_0_REGS                       (0x44E33000)
66*10465441SEvalZero #define AM33XX_WDT_1_REGS                       (0x44E35000)
67*10465441SEvalZero 
68*10465441SEvalZero /** @brief Base address of WDT memory mapped registers                        */
69*10465441SEvalZero #define AM33XX_CPSW_SS_REGS                     (0x4A100000)
70*10465441SEvalZero #define AM33XX_CPSW_MDIO_REGS                   (0x4A101000)
71*10465441SEvalZero #define AM33XX_CPSW_WR_REGS                     (0x4A101200)
72*10465441SEvalZero #define AM33XX_CPSW_CPDMA_REGS                  (0x4A100800)
73*10465441SEvalZero #define AM33XX_CPSW_ALE_REGS                    (0x4A100D00)
74*10465441SEvalZero #define AM33XX_CPSW_STAT_REGS                   (0x4A100900)
75*10465441SEvalZero #define AM33XX_CPSW_PORT_0_REGS                 (0x4A100100)
76*10465441SEvalZero #define AM33XX_CPSW_PORT_1_REGS                 (0x4A100200)
77*10465441SEvalZero #define AM33XX_CPSW_SLIVER_1_REGS               (0x4A100D80)
78*10465441SEvalZero #define AM33XX_CPSW_PORT_2_REGS                 (0x4A100300)
79*10465441SEvalZero #define AM33XX_CPSW_SLIVER_2_REGS               (0x4A100DC0)
80*10465441SEvalZero #define AM33XX_CPSW_CPPI_RAM_REGS               (0x4A102000)
81*10465441SEvalZero 
82*10465441SEvalZero /** @brief Base address of McASP memory mapped registers                      */
83*10465441SEvalZero #define AM33XX_MCASP_1_CTRL_REGS                (0x4803C000)
84*10465441SEvalZero #define AM33XX_MCASP_1_FIFO_REGS                (AM33XX_MCASP_1_CTRL_REGS + 0x1000)
85*10465441SEvalZero #define AM33XX_MCASP_1_DATA_REGS                (0x46400000)
86*10465441SEvalZero 
87*10465441SEvalZero /** @brief Base address of EMIF memory mapped registers                       */
88*10465441SEvalZero #define AM33XX_EMIF_0_REGS                      (0x4C000000)
89*10465441SEvalZero 
90*10465441SEvalZero /** @brief Base addresses of RTC memory mapped registers                      */
91*10465441SEvalZero #define AM33XX_RTC_0_REGS                       (0x44E3E000)
92*10465441SEvalZero 
93*10465441SEvalZero #define CM_PER(base)                      ((base) + 0)
94*10465441SEvalZero #define CM_PER_L4LS_CLKSTCTRL(base)       (CM_PER(base) + 0)
95*10465441SEvalZero #define CM_PER_UART1_CLKCTRL(base)        (CM_PER(base) + 0x6C)
96*10465441SEvalZero #define CM_PER_UART2_CLKCTRL(base)        (CM_PER(base) + 0x70)
97*10465441SEvalZero #define CM_PER_UART3_CLKCTRL(base)        (CM_PER(base) + 0x74)
98*10465441SEvalZero #define CM_PER_UART4_CLKCTRL(base)        (CM_PER(base) + 0x78)
99*10465441SEvalZero #define CM_PER_UART5_CLKCTRL(base)        (CM_PER(base) + 0x38)
100*10465441SEvalZero #define CM_WKUP(base)                     ((base) + 0x400)
101*10465441SEvalZero #define CM_DPLL(base)                     ((base) + 0x500)
102*10465441SEvalZero #define CM_MPU(base)                      ((base) + 0x600)
103*10465441SEvalZero #define CM_DEVICE(base)                   ((base) + 0x700)
104*10465441SEvalZero #define CM_RTC(base)                      ((base) + 0x800)
105*10465441SEvalZero #define CM_GFX(base)                      ((base) + 0x900)
106*10465441SEvalZero #define CM_CEFUSE(base)                   ((base) + 0xA00)
107*10465441SEvalZero #define OCP_AM33XXKET_RAM(base)           ((base) + 0xB00)
108*10465441SEvalZero #define PRM_PER(base)                     ((base) + 0xC00)
109*10465441SEvalZero #define PRM_PER_PWRSTST(base)             (PRM_PER(base) + 0x008)
110*10465441SEvalZero #define PRM_PER_PWRSTCTRL(base)           (PRM_PER(base) + 0x00C)
111*10465441SEvalZero #define PRM_WKUP(base)                    ((base) + 0xD00)
112*10465441SEvalZero #define PRM_MPU(base)                     ((base) + 0xE00)
113*10465441SEvalZero #define PRM_DEVICE(base)                  ((base) + 0xF00)
114*10465441SEvalZero #define PRM_RTC(base)                     ((base) + 0x1000)
115*10465441SEvalZero #define PRM_GFX(base)                     ((base) + 0x1100)
116*10465441SEvalZero #define PRM_CEFUSE(base)                  ((base) + 0x1200)
117*10465441SEvalZero 
118*10465441SEvalZero /** @brief Base addresses of PRCM memory mapped registers                     */
119*10465441SEvalZero #define AM33XX_PRCM_REGS                        (0x44E00000)
120*10465441SEvalZero #define AM33XX_CM_PER_REGS                      CM_PER(AM33XX_PRCM_REGS)
121*10465441SEvalZero #define AM33XX_CM_WKUP_REGS                     CM_WKUP(AM33XX_PRCM_REGS)
122*10465441SEvalZero #define AM33XX_CM_DPLL_REGS                     CM_DPLL(AM33XX_PRCM_REGS)
123*10465441SEvalZero #define AM33XX_CM_MPU_REGS                      CM_MPU(AM33XX_PRCM_REGS)
124*10465441SEvalZero #define AM33XX_CM_DEVICE_REGS                   CM_DEVICE(AM33XX_PRCM_REGS)
125*10465441SEvalZero #define AM33XX_CM_RTC_REGS                      CM_RTC(AM33XX_PRCM_REGS)
126*10465441SEvalZero #define AM33XX_CM_GFX_REGS                      CM_GFX(AM33XX_PRCM_REGS)
127*10465441SEvalZero #define AM33XX_CM_CEFUSE_REGS                   CM_CEFUSE(AM33XX_PRCM_REGS)
128*10465441SEvalZero #define AM33XX_OCP_AM33XXKET_RAM_REGS           OCP_AM33XXKET_RAM(AM33XX_PRCM_REGS)
129*10465441SEvalZero #define AM33XX_PRM_PER_REGS                     PRM_PER(AM33XX_PRCM_REGS)
130*10465441SEvalZero #define AM33XX_PRM_WKUP_REGS                    PRM_WKUP(AM33XX_PRCM_REGS)
131*10465441SEvalZero #define AM33XX_PRM_MPU_REGS                     PRM_MPU(AM33XX_PRCM_REGS)
132*10465441SEvalZero #define AM33XX_PRM_DEVICE_REGS                  PRM_DEVICE(AM33XX_PRCM_REGS)
133*10465441SEvalZero #define AM33XX_PRM_RTC_REGS                     PRM_RTC(AM33XX_PRCM_REGS)
134*10465441SEvalZero #define AM33XX_PRM_GFX_REGS                     PRM_GFX(AM33XX_PRCM_REGS)
135*10465441SEvalZero #define AM33XX_PRM_CEFUSE_REGS                  PRM_CEFUSE(AM33XX_PRCM_REGS)
136*10465441SEvalZero 
137*10465441SEvalZero /** @brief Base address of control module memory mapped registers             */
138*10465441SEvalZero #define AM33XX_CONTROL_REGS                     (0x44E10000)
139*10465441SEvalZero 
140*10465441SEvalZero 
141*10465441SEvalZero /** @brief Base address of Channel controller  memory mapped registers        */
142*10465441SEvalZero #define AM33XX_EDMA30CC_0_REGS                  (0x49000000)
143*10465441SEvalZero 
144*10465441SEvalZero /** @brief Base address of DCAN module memory mapped registers                */
145*10465441SEvalZero #define AM33XX_DCAN_0_REGS                      (0x481CC000)
146*10465441SEvalZero #define AM33XX_DCAN_1_REGS                      (0x481D0000)
147*10465441SEvalZero 
148*10465441SEvalZero /******************************************************************************\
149*10465441SEvalZero *  Parameterizable Configuration:- These are fed directly from the RTL
150*10465441SEvalZero *  parameters for the given AM33XX
151*10465441SEvalZero \******************************************************************************/
152*10465441SEvalZero #define TPCC_MUX(n)                             0xF90 + ((n) * 4)
153*10465441SEvalZero 
154*10465441SEvalZero 
155*10465441SEvalZero #define AM33XX_LCDC_0_REGS                     0x4830E000
156*10465441SEvalZero 
157*10465441SEvalZero #define AM33XX_ADC_TSC_0_REGS                  0x44E0D000
158*10465441SEvalZero 
159*10465441SEvalZero /** @brief Base addresses of PWMSS memory mapped registers.                   */
160*10465441SEvalZero 
161*10465441SEvalZero #define AM33XX_PWMSS0_REGS                     (0x48300000)
162*10465441SEvalZero #define AM33XX_PWMSS1_REGS                     (0x48302000)
163*10465441SEvalZero #define AM33XX_PWMSS2_REGS                     (0x48304000)
164*10465441SEvalZero 
165*10465441SEvalZero #define AM33XX_ECAP_REGS                       (0x00000100)
166*10465441SEvalZero #define AM33XX_EQEP_REGS                       (0x00000180)
167*10465441SEvalZero #define AM33XX_EPWM_REGS                       (0x00000200)
168*10465441SEvalZero 
169*10465441SEvalZero #define AM33XX_ECAP_0_REGS                     (AM33XX_PWMSS0_REGS + AM33XX_ECAP_REGS)
170*10465441SEvalZero #define AM33XX_ECAP_1_REGS                     (AM33XX_PWMSS1_REGS + AM33XX_ECAP_REGS)
171*10465441SEvalZero #define AM33XX_ECAP_2_REGS                     (AM33XX_PWMSS2_REGS + AM33XX_ECAP_REGS)
172*10465441SEvalZero 
173*10465441SEvalZero #define AM33XX_EQEP_0_REGS                     (AM33XX_PWMSS0_REGS + AM33XX_EQEP_REGS)
174*10465441SEvalZero #define AM33XX_EQEP_1_REGS                     (AM33XX_PWMSS1_REGS + AM33XX_EQEP_REGS)
175*10465441SEvalZero #define AM33XX_EQEP_2_REGS                     (AM33XX_PWMSS2_REGS + AM33XX_EQEP_REGS)
176*10465441SEvalZero 
177*10465441SEvalZero #define AM33XX_EPWM_0_REGS                     (AM33XX_PWMSS0_REGS + AM33XX_EPWM_REGS)
178*10465441SEvalZero #define AM33XX_EPWM_1_REGS                     (AM33XX_PWMSS1_REGS + AM33XX_EPWM_REGS)
179*10465441SEvalZero #define AM33XX_EPWM_2_REGS                     (AM33XX_PWMSS2_REGS + AM33XX_EPWM_REGS)
180*10465441SEvalZero 
181*10465441SEvalZero #define AM33XX_EPWM_MODULE_FREQ                 100
182*10465441SEvalZero 
183*10465441SEvalZero /* PRCM registers */
184*10465441SEvalZero #define CM_PER_L4LS_CLKSTCTRL_REG(base)    REG32((base) + 0x0)
185*10465441SEvalZero #define CM_PER_UART1_CLKCTRL_REG(base)     REG32(CM_PER_UART1_CLKCTRL(base))
186*10465441SEvalZero #define CM_PER_UART2_CLKCTRL_REG(base)     REG32(CM_PER_UART2_CLKCTRL(base))
187*10465441SEvalZero #define CM_PER_UART3_CLKCTRL_REG(base)     REG32(CM_PER_UART3_CLKCTRL(base))
188*10465441SEvalZero #define CM_PER_UART4_CLKCTRL_REG(base)     REG32(CM_PER_UART4_CLKCTRL(base))
189*10465441SEvalZero #define CM_PER_UART5_CLKCTRL_REG(base)     REG32(CM_PER_UART5_CLKCTRL(base))
190*10465441SEvalZero 
191*10465441SEvalZero #define CM_PER_TIMER7_CLKCTRL(base)        REG32((base) + 0x7C)
192*10465441SEvalZero #define CM_PER_TIMER2_CLKCTRL(base)        REG32((base) + 0x80)
193*10465441SEvalZero 
194*10465441SEvalZero #define PRM_PER_PWRSTST_REG(base)          REG32(PRM_PER_PWRSTST(base))
195*10465441SEvalZero #define PRM_PER_PWRSTCTRL_REG(base)        REG32(PRM_PER_PWRSTCTRL(base))
196*10465441SEvalZero 
197*10465441SEvalZero #define CM_DPLL_CLKSEL_TIMER7_CLK(base)    REG32(CM_DPLL(base) + 0x4)
198*10465441SEvalZero #define CM_DPLL_CLKSEL_TIMER2_CLK(base)    REG32(CM_DPLL(base) + 0x8)
199*10465441SEvalZero 
200*10465441SEvalZero /* timer registers */
201*10465441SEvalZero #define DMTIMER_TIDR(base)   		REG32(base + 0x0)
202*10465441SEvalZero #define DMTIMER_TIOCP_CFG(base)   	REG32(base + 0x10)
203*10465441SEvalZero #define DMTIMER_IRQ_EOI(base)   	REG32(base + 0x20)
204*10465441SEvalZero #define DMTIMER_IRQSTATUS_RAW(base)	REG32(base + 0x24)
205*10465441SEvalZero #define DMTIMER_IRQSTATUS(base)   	REG32(base + 0x28)
206*10465441SEvalZero #define DMTIMER_IRQENABLE_SET(base)	REG32(base + 0x2C)
207*10465441SEvalZero #define DMTIMER_IRQENABLE_CLR(base)	REG32(base + 0x30)
208*10465441SEvalZero #define DMTIMER_IRQWAKEEN(base)   	REG32(base + 0x34)
209*10465441SEvalZero #define DMTIMER_TCLR(base)   		REG32(base + 0x38)
210*10465441SEvalZero #define DMTIMER_TCRR(base)   		REG32(base + 0x3C)
211*10465441SEvalZero #define DMTIMER_TLDR(base)   		REG32(base + 0x40)
212*10465441SEvalZero #define DMTIMER_TTGR(base)   		REG32(base + 0x44)
213*10465441SEvalZero #define DMTIMER_TWPS(base)   		REG32(base + 0x48)
214*10465441SEvalZero #define DMTIMER_TMAR(base)   		REG32(base + 0x4C)
215*10465441SEvalZero #define DMTIMER_TCAR(base, n)		REG32(base + 0x50 + (((n) - 1) * 8))
216*10465441SEvalZero #define DMTIMER_TSICR(base)   		REG32(base + 0x54)
217*10465441SEvalZero 
218*10465441SEvalZero #define EMU_INT               0
219*10465441SEvalZero #define COMMTX_INT            1
220*10465441SEvalZero #define COMMRX_INT            2
221*10465441SEvalZero #define BENCH_INT             3
222*10465441SEvalZero #define ELM_IRQ_INT           4
223*10465441SEvalZero #define NMI_INT               7
224*10465441SEvalZero #define L3DEBUG_INT           9
225*10465441SEvalZero #define L3APP_INT             10
226*10465441SEvalZero #define PRCM_INT              11
227*10465441SEvalZero #define EDMACOMP_INT          12
228*10465441SEvalZero #define EDMAMPERR_INT         13
229*10465441SEvalZero #define EDMAERR_INT           14
230*10465441SEvalZero #define ADC_TSC_GEN_INT       16
231*10465441SEvalZero #define USBSS_INT             17
232*10465441SEvalZero #define USB_INT0              18
233*10465441SEvalZero #define USB_INT1              19
234*10465441SEvalZero #define PRU_ICSS_EVTOUT0_INT  20
235*10465441SEvalZero #define PRU_ICSS_EVTOUT1_INT  21
236*10465441SEvalZero #define PRU_ICSS_EVTOUT2_INT  22
237*10465441SEvalZero #define PRU_ICSS_EVTOUT3_INT  23
238*10465441SEvalZero #define PRU_ICSS_EVTOUT4_INT  24
239*10465441SEvalZero #define PRU_ICSS_EVTOUT5_INT  25
240*10465441SEvalZero #define PRU_ICSS_EVTOUT6_INT  26
241*10465441SEvalZero #define PRU_ICSS_EVTOUT7_INT  27
242*10465441SEvalZero #define MMCSD1_INT            28
243*10465441SEvalZero #define MMCSD2_INT            29
244*10465441SEvalZero #define I2C2_INT              30
245*10465441SEvalZero #define ECAP0_INT             31
246*10465441SEvalZero #define GPIO_INT2A            32
247*10465441SEvalZero #define GPIO_INT2B            33
248*10465441SEvalZero #define USBWAKEUP_INT         34
249*10465441SEvalZero #define LCDC_INT              36
250*10465441SEvalZero #define GFX_INT               37
251*10465441SEvalZero #define EPWM2_INT             39
252*10465441SEvalZero #define CPSW_RXTHR0_INT       40
253*10465441SEvalZero #define CPSW_RX_INT0          41
254*10465441SEvalZero #define CPSW_TX_INT0          42
255*10465441SEvalZero #define CPSW_MISC0_INT        43
256*10465441SEvalZero #define UART3_INT             44
257*10465441SEvalZero #define UART4_INT             45
258*10465441SEvalZero #define UART5_INT             46
259*10465441SEvalZero #define ECAP1_INT             47
260*10465441SEvalZero #define DCAN0_INT0            52
261*10465441SEvalZero #define DCAN0_INT1            53
262*10465441SEvalZero #define DCAN0_PARITY          54
263*10465441SEvalZero #define DCAN1_INT0            55
264*10465441SEvalZero #define DCAN1_INT1            56
265*10465441SEvalZero #define DCAN1_PARITY          57
266*10465441SEvalZero #define EPWM0_TZINT           58
267*10465441SEvalZero #define EPWM1_TZINT           59
268*10465441SEvalZero #define EPWM2_TZINT           60
269*10465441SEvalZero #define ECAP2_INT             61
270*10465441SEvalZero #define GPIO_INT3A            62
271*10465441SEvalZero #define GPIO_INT3B            63
272*10465441SEvalZero #define MMCSD0_INT            64
273*10465441SEvalZero #define MCSPI0_INT            65
274*10465441SEvalZero #define TINT0                 66
275*10465441SEvalZero #define TINT1_1MS             67
276*10465441SEvalZero #define TINT2                 68
277*10465441SEvalZero #define TINT3                 69
278*10465441SEvalZero #define I2C0_INT              70
279*10465441SEvalZero #define I2C1_INT              71
280*10465441SEvalZero #define UART0_INT             72
281*10465441SEvalZero #define UART1_INT             73
282*10465441SEvalZero #define UART2_INT             74
283*10465441SEvalZero #define RTC_INT               75
284*10465441SEvalZero #define RTC_ALARM_INT         76
285*10465441SEvalZero #define MB_INT0               77
286*10465441SEvalZero #define M3_TXEV               78
287*10465441SEvalZero #define EQEP0_INT             79
288*10465441SEvalZero #define MACTX_INT0            80
289*10465441SEvalZero #define MCARX_INT0            81
290*10465441SEvalZero #define MCATX_INT1            82
291*10465441SEvalZero #define MCARX_INT1            83
292*10465441SEvalZero #define EPWM0_INT             86
293*10465441SEvalZero #define EPWM1_INT             87
294*10465441SEvalZero #define EQEP1_INT             88
295*10465441SEvalZero #define EQEP2_INT             89
296*10465441SEvalZero #define DMA_INTR_PIN2         90
297*10465441SEvalZero #define WDT1_INT              91
298*10465441SEvalZero #define TINT4                 92
299*10465441SEvalZero #define TINT5                 93
300*10465441SEvalZero #define TINT6                 94
301*10465441SEvalZero #define TINT7                 95
302*10465441SEvalZero #define GPIO_INT0A            96
303*10465441SEvalZero #define GPIO_INT0B            97
304*10465441SEvalZero #define GPIO_INT1A            98
305*10465441SEvalZero #define GPIO_INT1B            99
306*10465441SEvalZero #define GPMC_INT              100
307*10465441SEvalZero #define DDRERR0               101
308*10465441SEvalZero #define TCERR_INT0            112
309*10465441SEvalZero #define TCERR_INT1            113
310*10465441SEvalZero #define TCERR_INT2            114
311*10465441SEvalZero #define ADC_TSC_PEN_INT       115
312*10465441SEvalZero #define SMRFLX_MPU            120
313*10465441SEvalZero #define SMRFLX_CORE           121
314*10465441SEvalZero #define DMA_INTR_PIN0         123
315*10465441SEvalZero #define DMA_INTR_PIN1         124
316*10465441SEvalZero #define MCSPI1_INT            125
317*10465441SEvalZero 
318*10465441SEvalZero struct rt_hw_register
319*10465441SEvalZero {
320*10465441SEvalZero 	unsigned long r0;
321*10465441SEvalZero 	unsigned long r1;
322*10465441SEvalZero 	unsigned long r2;
323*10465441SEvalZero 	unsigned long r3;
324*10465441SEvalZero 	unsigned long r4;
325*10465441SEvalZero 	unsigned long r5;
326*10465441SEvalZero 	unsigned long r6;
327*10465441SEvalZero 	unsigned long r7;
328*10465441SEvalZero 	unsigned long r8;
329*10465441SEvalZero 	unsigned long r9;
330*10465441SEvalZero 	unsigned long r10;
331*10465441SEvalZero 	unsigned long fp;
332*10465441SEvalZero 	unsigned long ip;
333*10465441SEvalZero 	unsigned long sp;
334*10465441SEvalZero 	unsigned long lr;
335*10465441SEvalZero 	unsigned long pc;
336*10465441SEvalZero 	unsigned long cpsr;
337*10465441SEvalZero 	unsigned long ORIG_r0;
338*10465441SEvalZero };
339*10465441SEvalZero 
340*10465441SEvalZero #define USERMODE	0x10
341*10465441SEvalZero #define FIQMODE		0x11
342*10465441SEvalZero #define IRQMODE		0x12
343*10465441SEvalZero #define SVCMODE		0x13
344*10465441SEvalZero #define ABORTMODE	0x17
345*10465441SEvalZero #define UNDEFMODE	0x1b
346*10465441SEvalZero #define MODEMASK	0x1f
347*10465441SEvalZero #define NOINT		0xc0
348*10465441SEvalZero 
349*10465441SEvalZero #endif
350