|
@@ -1332,21 +1332,27 @@ EXPORT_SYMBOL(ssb_bus_powerup);
|
|
|
static void ssb_broadcast_value(struct ssb_device *dev,
|
|
|
u32 address, u32 data)
|
|
|
{
|
|
|
+#ifdef CONFIG_SSB_DRIVER_PCICORE
|
|
|
/* This is used for both, PCI and ChipCommon core, so be careful. */
|
|
|
BUILD_BUG_ON(SSB_PCICORE_BCAST_ADDR != SSB_CHIPCO_BCAST_ADDR);
|
|
|
BUILD_BUG_ON(SSB_PCICORE_BCAST_DATA != SSB_CHIPCO_BCAST_DATA);
|
|
|
+#endif
|
|
|
|
|
|
- ssb_write32(dev, SSB_PCICORE_BCAST_ADDR, address);
|
|
|
- ssb_read32(dev, SSB_PCICORE_BCAST_ADDR); /* flush */
|
|
|
- ssb_write32(dev, SSB_PCICORE_BCAST_DATA, data);
|
|
|
- ssb_read32(dev, SSB_PCICORE_BCAST_DATA); /* flush */
|
|
|
+ ssb_write32(dev, SSB_CHIPCO_BCAST_ADDR, address);
|
|
|
+ ssb_read32(dev, SSB_CHIPCO_BCAST_ADDR); /* flush */
|
|
|
+ ssb_write32(dev, SSB_CHIPCO_BCAST_DATA, data);
|
|
|
+ ssb_read32(dev, SSB_CHIPCO_BCAST_DATA); /* flush */
|
|
|
}
|
|
|
|
|
|
void ssb_commit_settings(struct ssb_bus *bus)
|
|
|
{
|
|
|
struct ssb_device *dev;
|
|
|
|
|
|
+#ifdef CONFIG_SSB_DRIVER_PCICORE
|
|
|
dev = bus->chipco.dev ? bus->chipco.dev : bus->pcicore.dev;
|
|
|
+#else
|
|
|
+ dev = bus->chipco.dev;
|
|
|
+#endif
|
|
|
if (WARN_ON(!dev))
|
|
|
return;
|
|
|
/* This forces an update of the cached registers. */
|