File Index
Files and directories
Sign in
FILE

ssb_driver_mips.h

File preview with syntax highlighting.

linux-6.19.14/include/linux/ssb/ssb_driver_mips.h C
 1/* SPDX-License-Identifier: GPL-2.0 */
 2#ifndef LINUX_SSB_MIPSCORE_H_
 3#define LINUX_SSB_MIPSCORE_H_
 4
 5#ifdef CONFIG_SSB_DRIVER_MIPS
 6
 7struct ssb_device;
 8
 9struct ssb_serial_port {
10	void *regs;
11	unsigned long clockspeed;
12	unsigned int irq;
13	unsigned int baud_base;
14	unsigned int reg_shift;
15};
16
17struct ssb_pflash {
18	bool present;
19	u8 buswidth;
20	u32 window;
21	u32 window_size;
22};
23
24#ifdef CONFIG_SSB_SFLASH
25struct ssb_sflash {
26	bool present;
27	u32 window;
28	u32 blocksize;
29	u16 numblocks;
30	u32 size;
31
32	void *priv;
33};
34#endif
35
36struct ssb_mipscore {
37	struct ssb_device *dev;
38
39	int nr_serial_ports;
40	struct ssb_serial_port serial_ports[4];
41
42	struct ssb_pflash pflash;
43#ifdef CONFIG_SSB_SFLASH
44	struct ssb_sflash sflash;
45#endif
46};
47
48extern void ssb_mipscore_init(struct ssb_mipscore *mcore);
49extern u32 ssb_cpu_clock(struct ssb_mipscore *mcore);
50
51extern unsigned int ssb_mips_irq(struct ssb_device *dev);
52
53
54#else /* CONFIG_SSB_DRIVER_MIPS */
55
56struct ssb_mipscore {
57};
58
59static inline
60void ssb_mipscore_init(struct ssb_mipscore *mcore)
61{
62}
63
64static inline unsigned int ssb_mips_irq(struct ssb_device *dev)
65{
66	return 0;
67}
68
69#endif /* CONFIG_SSB_DRIVER_MIPS */
70
71#endif /* LINUX_SSB_MIPSCORE_H_ */
~/ Read-only file preview.