|
@@ -15,6 +15,8 @@
|
|
|
#include <linux/platform_device.h>
|
|
|
#include <linux/bcma/bcma.h>
|
|
|
|
|
|
+static void bcma_chipco_serial_init(struct bcma_drv_cc *cc);
|
|
|
+
|
|
|
static inline u32 bcma_cc_write32_masked(struct bcma_drv_cc *cc, u16 offset,
|
|
|
u32 mask, u32 value)
|
|
|
{
|
|
@@ -115,6 +117,8 @@ int bcma_chipco_watchdog_register(struct bcma_drv_cc *cc)
|
|
|
|
|
|
void bcma_core_chipcommon_early_init(struct bcma_drv_cc *cc)
|
|
|
{
|
|
|
+ struct bcma_bus *bus = cc->core->bus;
|
|
|
+
|
|
|
if (cc->early_setup_done)
|
|
|
return;
|
|
|
|
|
@@ -129,6 +133,9 @@ void bcma_core_chipcommon_early_init(struct bcma_drv_cc *cc)
|
|
|
if (cc->capabilities & BCMA_CC_CAP_PMU)
|
|
|
bcma_pmu_early_init(cc);
|
|
|
|
|
|
+ if (IS_BUILTIN(CONFIG_BCM47XX) && bus->hosttype == BCMA_HOSTTYPE_SOC)
|
|
|
+ bcma_chipco_serial_init(cc);
|
|
|
+
|
|
|
cc->early_setup_done = true;
|
|
|
}
|
|
|
|
|
@@ -314,9 +321,9 @@ u32 bcma_chipco_gpio_pulldown(struct bcma_drv_cc *cc, u32 mask, u32 value)
|
|
|
return res;
|
|
|
}
|
|
|
|
|
|
-#ifdef CONFIG_BCMA_DRIVER_MIPS
|
|
|
-void bcma_chipco_serial_init(struct bcma_drv_cc *cc)
|
|
|
+static void bcma_chipco_serial_init(struct bcma_drv_cc *cc)
|
|
|
{
|
|
|
+#if IS_BUILTIN(CONFIG_BCM47XX)
|
|
|
unsigned int irq;
|
|
|
u32 baud_base;
|
|
|
u32 i;
|
|
@@ -358,5 +365,5 @@ void bcma_chipco_serial_init(struct bcma_drv_cc *cc)
|
|
|
ports[i].baud_base = baud_base;
|
|
|
ports[i].reg_shift = 0;
|
|
|
}
|
|
|
+#endif /* CONFIG_BCM47XX */
|
|
|
}
|
|
|
-#endif /* CONFIG_BCMA_DRIVER_MIPS */
|