| 
									
										
										
										
											2007-09-18 15: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 20:36:17 +02:00
										 |  |  | struct ssb_pflash { | 
					
						
							| 
									
										
										
										
											2012-09-29 20:36:18 +02:00
										 |  |  | 	bool present; | 
					
						
							| 
									
										
										
										
											2012-09-29 20:36:17 +02:00
										 |  |  | 	u8 buswidth; | 
					
						
							|  |  |  | 	u32 window; | 
					
						
							|  |  |  | 	u32 window_size; | 
					
						
							|  |  |  | }; | 
					
						
							| 
									
										
										
										
											2007-09-18 15:12:50 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-17 19:56:20 +02:00
										 |  |  | #ifdef CONFIG_SSB_SFLASH
 | 
					
						
							|  |  |  | struct ssb_sflash { | 
					
						
							|  |  |  | 	bool present; | 
					
						
							|  |  |  | 	u32 window; | 
					
						
							|  |  |  | 	u32 blocksize; | 
					
						
							|  |  |  | 	u16 numblocks; | 
					
						
							|  |  |  | 	u32 size; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	void *priv; | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-09-18 15: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 20:36:17 +02:00
										 |  |  | 	struct ssb_pflash pflash; | 
					
						
							| 
									
										
										
										
											2013-06-17 19:56:20 +02:00
										 |  |  | #ifdef CONFIG_SSB_SFLASH
 | 
					
						
							|  |  |  | 	struct ssb_sflash sflash; | 
					
						
							|  |  |  | #endif
 | 
					
						
							| 
									
										
										
										
											2007-09-18 15: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-26 21:38:35 +01:00
										 |  |  | static inline unsigned int ssb_mips_irq(struct ssb_device *dev) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	return 0; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-09-18 15:12:50 -04:00
										 |  |  | #endif /* CONFIG_SSB_DRIVER_MIPS */
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif /* LINUX_SSB_MIPSCORE_H_ */
 |