2007-09-18 23:12:50 +04:00
|
|
|
#ifndef LINUX_SSB_MIPSCORE_H_
|
|
|
|
#define LINUX_SSB_MIPSCORE_H_
|
|
|
|
|
|
|
|
#ifdef CONFIG_SSB_DRIVER_MIPS
|
|
|
|
|
|
|
|
struct ssb_device;
|
|
|
|
|
|
|
|
struct ssb_serial_port {
|
|
|
|
void *regs;
|
|
|
|
unsigned long clockspeed;
|
|
|
|
unsigned int irq;
|
|
|
|
unsigned int baud_base;
|
|
|
|
unsigned int reg_shift;
|
|
|
|
};
|
|
|
|
|
2012-09-29 22:36:17 +04:00
|
|
|
struct ssb_pflash {
|
2012-09-29 22:36:18 +04:00
|
|
|
bool present;
|
2012-09-29 22:36:17 +04:00
|
|
|
u8 buswidth;
|
|
|
|
u32 window;
|
|
|
|
u32 window_size;
|
|
|
|
};
|
2007-09-18 23:12:50 +04:00
|
|
|
|
|
|
|
struct ssb_mipscore {
|
|
|
|
struct ssb_device *dev;
|
|
|
|
|
|
|
|
int nr_serial_ports;
|
|
|
|
struct ssb_serial_port serial_ports[4];
|
|
|
|
|
2012-09-29 22:36:17 +04:00
|
|
|
struct ssb_pflash pflash;
|
2007-09-18 23:12:50 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
extern void ssb_mipscore_init(struct ssb_mipscore *mcore);
|
|
|
|
extern u32 ssb_cpu_clock(struct ssb_mipscore *mcore);
|
|
|
|
|
|
|
|
extern unsigned int ssb_mips_irq(struct ssb_device *dev);
|
|
|
|
|
|
|
|
|
|
|
|
#else /* CONFIG_SSB_DRIVER_MIPS */
|
|
|
|
|
|
|
|
struct ssb_mipscore {
|
|
|
|
};
|
|
|
|
|
|
|
|
static inline
|
|
|
|
void ssb_mipscore_init(struct ssb_mipscore *mcore)
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
2013-01-27 00:38:35 +04:00
|
|
|
static inline unsigned int ssb_mips_irq(struct ssb_device *dev)
|
|
|
|
{
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
2007-09-18 23:12:50 +04:00
|
|
|
#endif /* CONFIG_SSB_DRIVER_MIPS */
|
|
|
|
|
|
|
|
#endif /* LINUX_SSB_MIPSCORE_H_ */
|