1 #ifndef _ASM_PROC_INTCTL_REGS_H 2 #define _ASM_PROC_INTCTL_REGS_H 3 4 #ifndef _ASM_INTCTL_REGS_H 5 # error "please don't include this file directly" 6 #endif 7 8 /* intr acceptance group reg */ 9 #define IAGR __SYSREG(0xd4000100, u16) 10 11 /* group number register */ 12 #define IAGR_GN 0x00fc 13 14 #define __GET_XIRQ_TRIGGER(X, Z) (((Z) >> ((X) * 2)) & 3) 15 16 #define __SET_XIRQ_TRIGGER(X, Y, Z) \ 17 ({ \ 18 typeof(Z) x = (Z); \ 19 x &= ~(3 << ((X) * 2)); \ 20 x |= ((Y) & 3) << ((X) * 2); \ 21 (Z) = x; \ 22 }) 23 24 /* external pin intr spec reg */ 25 #define EXTMD __SYSREG(0xd4000200, u16) 26 #define GET_XIRQ_TRIGGER(X) __GET_XIRQ_TRIGGER(X, EXTMD) 27 #define SET_XIRQ_TRIGGER(X, Y) __SET_XIRQ_TRIGGER(X, Y, EXTMD) 28 29 #endif /* _ASM_PROC_INTCTL_REGS_H */ 30