xref: /xnu-10063.141.1/pexpert/pexpert/arm/PL192_VIC.h (revision d8b80295118ef25ac3a784134bcf95cd8e88109f)
1 /*
2  * Copyright (c) 2005-2007 Apple Inc. All rights reserved.
3  */
4 
5 #ifndef _PEXPERT_ARM_PL192_VIC_H
6 #define _PEXPERT_ARM_PL192_VIC_H
7 
8 #define ARM_CELL_PL192_VIC
9 
10 // VIC
11 #define rVICIRQSTATUS           (*(volatile unsigned *)(pic_base + 0x000)) // VIC IRQ Status Register
12 #define rVICFIQSTATUS           (*(volatile unsigned *)(pic_base + 0x004)) // VIC FIQ Status Register
13 #define rVICRAWINTR             (*(volatile unsigned *)(pic_base + 0x008)) // VIC Raw Interrupt Status Register
14 #define rVICINTSELECT           (*(volatile unsigned *)(pic_base + 0x00C)) // VIC Interrupt Select Register
15 #define rVICINTENABLE           (*(volatile unsigned *)(pic_base + 0x010)) // VIC Interrupt Enable Register
16 #define rVICINTENCLEAR          (*(volatile unsigned *)(pic_base + 0x014)) // VIC Interrupt Enable Clear  Register
17 #define rVICSOFTINT             (*(volatile unsigned *)(pic_base + 0x018)) // VIC Soft Interrupt Register
18 #define rVICSOFTINTCLEAR        (*(volatile unsigned *)(pic_base + 0x01C)) // VIC Soft Interrupt Clear Register
19 #define rVICPROTECTION          (*(volatile unsigned *)(pic_base + 0x020)) // VIC Protection Register
20 #define rVICSWPRIORITYMASK      (*(volatile unsigned *)(pic_base + 0x024)) // VIC Software Priority Mask Register
21 #define rVICPRIORITYDAISY       (*(volatile unsigned *)(pic_base + 0x028)) // VIC Priority Daisy Chain Register
22 #define rVICVECTOR(x)           (*(volatile unsigned *)(pic_base + 0x100 + 4 * (x))) // VIC Vector Registers
23 #define rVICVECTPRIORITY(x)     (*(volatile unsigned *)(pic_base + 0x200 + 4 * (x))) // VIC Vector Priority Registers
24 #define rVICPERIPHID0           (*(volatile unsigned *)(pic_base + 0xFE0)) // VIC Peripheral ID 0 Register
25 #define rVICPERIPHID1           (*(volatile unsigned *)(pic_base + 0xFE4)) // VIC Peripheral ID 1 Register
26 #define rVICPERIPHID2           (*(volatile unsigned *)(pic_base + 0xFE8)) // VIC Peripheral ID 2 Register
27 #define rVICPERIPHID3           (*(volatile unsigned *)(pic_base + 0xFEC)) // VIC Peripheral ID 3 Register
28 #define rVICPCELLID0            (*(volatile unsigned *)(pic_base + 0xFF0)) // VIC PrimeCell ID 0 Register
29 #define rVICPCELLID1            (*(volatile unsigned *)(pic_base + 0xFF4)) // VIC PrimeCell ID 1 Register
30 #define rVICPCELLID2            (*(volatile unsigned *)(pic_base + 0xFF8)) // VIC PrimeCell ID 2 Register
31 #define rVICPCELLID3            (*(volatile unsigned *)(pic_base + 0xFFC)) // VIC PrimeCell ID 3 Register
32 
33 #endif /* ! _PEXPERT_ARM_PL192_VIC_H */
34