openwrt-owl/target/linux/cns3xxx/patches-3.18/031-pcie_init.patch

34 lines
866 B
Diff

--- a/arch/arm/mach-cns3xxx/laguna.c
+++ b/arch/arm/mach-cns3xxx/laguna.c
@@ -849,7 +849,6 @@ static struct map_desc laguna_io_desc[]
static void __init laguna_map_io(void)
{
cns3xxx_map_io();
- cns3xxx_pcie_iotable_init();
iotable_init(ARRAY_AND_SIZE(laguna_io_desc));
laguna_early_serial_setup();
}
@@ -873,15 +872,6 @@ static int laguna_register_gpio(struct g
return ret;
}
-static int __init laguna_pcie_init(void)
-{
- if (!machine_is_gw2388())
- return 0;
-
- return cns3xxx_pcie_init();
-}
-subsys_initcall(laguna_pcie_init);
-
static int __init laguna_model_setup(void)
{
u32 __iomem *mem;
@@ -1075,5 +1065,6 @@ MACHINE_START(GW2388, "Gateworks Corpora
.init_irq = cns3xxx_init_irq,
.init_time = cns3xxx_timer_init,
.init_machine = laguna_init,
+ .init_late = cns3xxx_pcie_init_late,
.restart = cns3xxx_restart,
MACHINE_END