1 #ifndef LINUX_SSB_MIPSCORE_H_
2 #define LINUX_SSB_MIPSCORE_H_
3 
4 #ifdef CONFIG_SSB_DRIVER_MIPS
5 
6 struct ssb_device;
7 
8 struct ssb_serial_port {
9 	void *regs;
10 	unsigned long clockspeed;
11 	unsigned int irq;
12 	unsigned int baud_base;
13 	unsigned int reg_shift;
14 };
15 
16 
17 struct ssb_mipscore {
18 	struct ssb_device *dev;
19 
20 	int nr_serial_ports;
21 	struct ssb_serial_port serial_ports[4];
22 
23 	u8 flash_buswidth;
24 	u32 flash_window;
25 	u32 flash_window_size;
26 };
27 
28 extern void ssb_mipscore_init(struct ssb_mipscore *mcore);
29 extern u32 ssb_cpu_clock(struct ssb_mipscore *mcore);
30 
31 extern unsigned int ssb_mips_irq(struct ssb_device *dev);
32 
33 
34 #else /* CONFIG_SSB_DRIVER_MIPS */
35 
36 struct ssb_mipscore {
37 };
38 
39 static inline
ssb_mipscore_init(struct ssb_mipscore * mcore)40 void ssb_mipscore_init(struct ssb_mipscore *mcore)
41 {
42 }
43 
44 #endif /* CONFIG_SSB_DRIVER_MIPS */
45 
46 #endif /* LINUX_SSB_MIPSCORE_H_ */
47