0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef __ASM_MIPS_DEC_KN02XA_H
0018 #define __ASM_MIPS_DEC_KN02XA_H
0019
0020 #include <asm/dec/ioasic_addrs.h>
0021
0022 #define KN02XA_SLOT_BASE 0x1c000000
0023
0024
0025
0026
0027 #define KN02XA_MER 0x0c400000
0028 #define KN02XA_MSR 0x0c800000
0029
0030
0031
0032
0033 #define KN02XA_MEM_CONF 0x0e000000
0034 #define KN02XA_EAR 0x0e000004
0035 #define KN02XA_BOOT0 0x0e000008
0036 #define KN02XA_MEM_INTR 0x0e00000c
0037
0038
0039
0040
0041
0042 #define KN02XA_MER_RES_28 (0xf<<28)
0043 #define KN02XA_MER_RES_17 (0x3ff<<17)
0044 #define KN02XA_MER_PAGERR (1<<16)
0045 #define KN02XA_MER_TRANSERR (1<<15)
0046 #define KN02XA_MER_PARDIS (1<<14)
0047 #define KN02XA_MER_SIZE (1<<13)
0048 #define KN02XA_MER_RES_12 (1<<12)
0049 #define KN02XA_MER_BYTERR (0xf<<8)
0050 #define KN02XA_MER_BYTERR_3 (0x8<<8)
0051 #define KN02XA_MER_BYTERR_2 (0x4<<8)
0052 #define KN02XA_MER_BYTERR_1 (0x2<<8)
0053 #define KN02XA_MER_BYTERR_0 (0x1<<8)
0054 #define KN02XA_MER_RES_0 (0xff<<0)
0055
0056
0057
0058
0059
0060 #define KN02XA_MSR_RES_27 (0x1f<<27)
0061 #define KN02XA_MSR_RES_14 (0x7<<14)
0062 #define KN02XA_MSR_SIZE (1<<13)
0063 #define KN02XA_MSR_RES_0 (0x1fff<<0)
0064
0065
0066
0067
0068 #define KN02XA_EAR_RES_29 (0x7<<29)
0069 #define KN02XA_EAR_ADDRESS (0x7ffffff<<2)
0070 #define KN02XA_EAR_RES_0 (0x3<<0)
0071
0072
0073 #ifndef __ASSEMBLY__
0074
0075 #include <linux/interrupt.h>
0076
0077 struct pt_regs;
0078
0079 extern void dec_kn02xa_be_init(void);
0080 extern int dec_kn02xa_be_handler(struct pt_regs *regs, int is_fixup);
0081 extern irqreturn_t dec_kn02xa_be_interrupt(int irq, void *dev_id);
0082 #endif
0083
0084 #endif