1#ifndef LINUX_BCMA_DRIVER_MIPS_H_ 2#define LINUX_BCMA_DRIVER_MIPS_H_ 3 4#define BCMA_MIPS_IPSFLAG 0x0F08 5/* which sbflags get routed to mips interrupt 1 */ 6#define BCMA_MIPS_IPSFLAG_IRQ1 0x0000003F 7#define BCMA_MIPS_IPSFLAG_IRQ1_SHIFT 0 8/* which sbflags get routed to mips interrupt 2 */ 9#define BCMA_MIPS_IPSFLAG_IRQ2 0x00003F00 10#define BCMA_MIPS_IPSFLAG_IRQ2_SHIFT 8 11/* which sbflags get routed to mips interrupt 3 */ 12#define BCMA_MIPS_IPSFLAG_IRQ3 0x003F0000 13#define BCMA_MIPS_IPSFLAG_IRQ3_SHIFT 16 14/* which sbflags get routed to mips interrupt 4 */ 15#define BCMA_MIPS_IPSFLAG_IRQ4 0x3F000000 16#define BCMA_MIPS_IPSFLAG_IRQ4_SHIFT 24 17 18/* MIPS 74K core registers */ 19#define BCMA_MIPS_MIPS74K_CORECTL 0x0000 20#define BCMA_MIPS_MIPS74K_EXCEPTBASE 0x0004 21#define BCMA_MIPS_MIPS74K_BIST 0x000C 22#define BCMA_MIPS_MIPS74K_INTMASK_INT0 0x0014 23#define BCMA_MIPS_MIPS74K_INTMASK(int) \ 24 ((int) * 4 + BCMA_MIPS_MIPS74K_INTMASK_INT0) 25#define BCMA_MIPS_MIPS74K_NMIMASK 0x002C 26#define BCMA_MIPS_MIPS74K_GPIOSEL 0x0040 27#define BCMA_MIPS_MIPS74K_GPIOOUT 0x0044 28#define BCMA_MIPS_MIPS74K_GPIOEN 0x0048 29#define BCMA_MIPS_MIPS74K_CLKCTLST 0x01E0 30 31#define BCMA_MIPS_OOBSELINA74 0x004 32#define BCMA_MIPS_OOBSELOUTA30 0x100 33 34struct bcma_device; 35 36struct bcma_drv_mips { 37 struct bcma_device *core; 38 u8 setup_done:1; 39 u8 early_setup_done:1; 40}; 41 42extern u32 bcma_cpu_clock(struct bcma_drv_mips *mcore); 43 44#endif /* LINUX_BCMA_DRIVER_MIPS_H_ */ 45