aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ssb/ssb_private.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ssb/ssb_private.h')
-rw-r--r--drivers/ssb/ssb_private.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/ssb/ssb_private.h b/drivers/ssb/ssb_private.h
index 21eca2b5118b..a83bf7a4d80b 100644
--- a/drivers/ssb/ssb_private.h
+++ b/drivers/ssb/ssb_private.h
@@ -81,6 +81,7 @@ extern int ssb_pcmcia_switch_segment(struct ssb_bus *bus,
81 u8 seg); 81 u8 seg);
82extern int ssb_pcmcia_get_invariants(struct ssb_bus *bus, 82extern int ssb_pcmcia_get_invariants(struct ssb_bus *bus,
83 struct ssb_init_invariants *iv); 83 struct ssb_init_invariants *iv);
84extern void ssb_pcmcia_exit(struct ssb_bus *bus);
84extern int ssb_pcmcia_init(struct ssb_bus *bus); 85extern int ssb_pcmcia_init(struct ssb_bus *bus);
85extern const struct ssb_bus_ops ssb_pcmcia_ops; 86extern const struct ssb_bus_ops ssb_pcmcia_ops;
86#else /* CONFIG_SSB_PCMCIAHOST */ 87#else /* CONFIG_SSB_PCMCIAHOST */
@@ -99,6 +100,9 @@ static inline int ssb_pcmcia_switch_segment(struct ssb_bus *bus,
99{ 100{
100 return 0; 101 return 0;
101} 102}
103static inline void ssb_pcmcia_exit(struct ssb_bus *bus)
104{
105}
102static inline int ssb_pcmcia_init(struct ssb_bus *bus) 106static inline int ssb_pcmcia_init(struct ssb_bus *bus)
103{ 107{
104 return 0; 108 return 0;
@@ -113,11 +117,26 @@ extern int ssb_bus_scan(struct ssb_bus *bus,
113extern void ssb_iounmap(struct ssb_bus *ssb); 117extern void ssb_iounmap(struct ssb_bus *ssb);
114 118
115 119
120/* sprom.c */
121extern
122ssize_t ssb_attr_sprom_show(struct ssb_bus *bus, char *buf,
123 int (*sprom_read)(struct ssb_bus *bus, u16 *sprom));
124extern
125ssize_t ssb_attr_sprom_store(struct ssb_bus *bus,
126 const char *buf, size_t count,
127 int (*sprom_check_crc)(const u16 *sprom, size_t size),
128 int (*sprom_write)(struct ssb_bus *bus, const u16 *sprom));
129
130
116/* core.c */ 131/* core.c */
117extern u32 ssb_calc_clock_rate(u32 plltype, u32 n, u32 m); 132extern u32 ssb_calc_clock_rate(u32 plltype, u32 n, u32 m);
118extern int ssb_devices_freeze(struct ssb_bus *bus); 133extern int ssb_devices_freeze(struct ssb_bus *bus);
119extern int ssb_devices_thaw(struct ssb_bus *bus); 134extern int ssb_devices_thaw(struct ssb_bus *bus);
120extern struct ssb_bus *ssb_pci_dev_to_bus(struct pci_dev *pdev); 135extern struct ssb_bus *ssb_pci_dev_to_bus(struct pci_dev *pdev);
136int ssb_for_each_bus_call(unsigned long data,
137 int (*func)(struct ssb_bus *bus, unsigned long data));
138extern struct ssb_bus *ssb_pcmcia_dev_to_bus(struct pcmcia_device *pdev);
139
121 140
122/* b43_pci_bridge.c */ 141/* b43_pci_bridge.c */
123#ifdef CONFIG_SSB_B43_PCI_BRIDGE 142#ifdef CONFIG_SSB_B43_PCI_BRIDGE