Lines Matching defs:bus
67 ssize_t ssb_attr_sprom_show(struct ssb_bus *bus, char *buf,
68 int (*sprom_read)(struct ssb_bus *bus, u16 *sprom))
73 size_t sprom_size_words = bus->sprom_size;
84 if (mutex_lock_interruptible(&bus->sprom_mutex))
86 err = sprom_read(bus, sprom);
87 mutex_unlock(&bus->sprom_mutex);
99 ssize_t ssb_attr_sprom_store(struct ssb_bus *bus,
102 int (*sprom_write)(struct ssb_bus *bus, const u16 *sprom))
106 size_t sprom_size_words = bus->sprom_size;
109 sprom = kcalloc(bus->sprom_size, sizeof(u16), GFP_KERNEL);
128 if (mutex_lock_interruptible(&bus->sprom_mutex))
130 err = ssb_devices_freeze(bus, &freeze);
135 res = sprom_write(bus, sprom);
140 mutex_unlock(&bus->sprom_mutex);
161 * SSB device hardwired to their PCI bus.
171 int ssb_arch_register_fallback_sprom(int (*sprom_callback)(struct ssb_bus *bus,
181 int ssb_fill_sprom_with_fallback(struct ssb_bus *bus, struct ssb_sprom *out)
186 return get_fallback_sprom(bus, out);
190 bool ssb_is_sprom_available(struct ssb_bus *bus)
198 if (bus->bustype == SSB_BUSTYPE_PCI &&
199 bus->chipco.dev && /* can be unavailable! */
200 bus->chipco.dev->id.revision >= 31)
201 return bus->chipco.capabilities & SSB_CHIPCO_CAP_SPROM;