From: Hauke Mehrtens Date: Sun, 15 Dec 2013 19:19:16 +0000 (+0000) Subject: brcm47xx: deactivate early printk support X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=36197755dc955f1ff287270d58a607ce975cbce4;p=openwrt%2Fstaging%2Frmilecki.git brcm47xx: deactivate early printk support This breaks some devices where the serial console is not at port 0 but somewhere else. Signed-off-by: Hauke Mehrtens SVN-Revision: 39060 --- diff --git a/target/linux/brcm47xx/config-3.10 b/target/linux/brcm47xx/config-3.10 index ed8dd6869a2..6d9f237cd60 100644 --- a/target/linux/brcm47xx/config-3.10 +++ b/target/linux/brcm47xx/config-3.10 @@ -49,8 +49,7 @@ CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y CONFIG_CPU_SUPPORTS_HIGHMEM=y CONFIG_CSRC_R4K=y CONFIG_DMA_NONCOHERENT=y -CONFIG_EARLY_PRINTK=y -CONFIG_EARLY_PRINTK_8250=y +# CONFIG_EARLY_PRINTK is not set CONFIG_GENERIC_ATOMIC64=y CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_GENERIC_CLOCKEVENTS_BUILD=y diff --git a/target/linux/brcm47xx/patches-3.10/082-MIPS-BCM47XX-add-EARLY_PRINTK_8250-support.patch b/target/linux/brcm47xx/patches-3.10/082-MIPS-BCM47XX-add-EARLY_PRINTK_8250-support.patch index 42f5917ed33..744e35985e7 100644 --- a/target/linux/brcm47xx/patches-3.10/082-MIPS-BCM47XX-add-EARLY_PRINTK_8250-support.patch +++ b/target/linux/brcm47xx/patches-3.10/082-MIPS-BCM47XX-add-EARLY_PRINTK_8250-support.patch @@ -51,50 +51,3 @@ Date: Thu Sep 19 22:48:35 2013 +0200 } void __init prom_free_prom_memory(void) ---- a/arch/mips/bcm47xx/setup.c -+++ b/arch/mips/bcm47xx/setup.c -@@ -123,6 +123,28 @@ static int bcm47xx_get_invariants(struct - return 0; - } - -+/* -+ * This is the second serial on the chip common core, it is at this position -+ * for sb (ssb) and ai (bcma) bus. -+ */ -+#define BCM47XX_SERIAL1_ADDR (SSB_ENUM_BASE + SSB_CHIPCO_UART1_DATA) -+ -+static void __init bcm47xx_swap_serial_ssb(struct ssb_mipscore *mcore) -+{ -+ struct ssb_serial_port port; -+ -+ printk(KERN_INFO "Swapping serial ports\n"); -+ -+ setup_8250_early_printk_port(CKSEG1ADDR(BCM47XX_SERIAL1_ADDR), 0, 0); -+ -+ /* swap serial ports */ -+ memcpy(&port, &mcore->serial_ports[0], sizeof(port)); -+ memcpy(&mcore->serial_ports[0], &mcore->serial_ports[1], sizeof(port)); -+ memcpy(&mcore->serial_ports[1], &port, sizeof(port)); -+ -+ printk(KERN_INFO "Serial port were Swapped\n"); -+} -+ - static void __init bcm47xx_register_ssb(void) - { - int err; -@@ -142,14 +164,7 @@ static void __init bcm47xx_register_ssb( - mcore = &bcm47xx_bus.ssb.mipscore; - if (bcm47xx_nvram_getenv("kernel_args", buf, sizeof(buf)) >= 0) { - if (strstr(buf, "console=ttyS1")) { -- struct ssb_serial_port port; -- -- printk(KERN_DEBUG "Swapping serial ports!\n"); -- /* swap serial ports */ -- memcpy(&port, &mcore->serial_ports[0], sizeof(port)); -- memcpy(&mcore->serial_ports[0], &mcore->serial_ports[1], -- sizeof(port)); -- memcpy(&mcore->serial_ports[1], &port, sizeof(port)); -+ bcm47xx_swap_serial_ssb(mcore); - } - } - } diff --git a/target/linux/brcm47xx/patches-3.10/170-fix-74k-cpu.patch b/target/linux/brcm47xx/patches-3.10/170-fix-74k-cpu.patch index c585faf8bb7..e25451bcdbd 100644 --- a/target/linux/brcm47xx/patches-3.10/170-fix-74k-cpu.patch +++ b/target/linux/brcm47xx/patches-3.10/170-fix-74k-cpu.patch @@ -8,7 +8,7 @@ #include #include #include -@@ -214,6 +215,15 @@ static void __init bcm47xx_register_bcma +@@ -199,6 +200,15 @@ static void __init bcm47xx_register_bcma panic("Failed to initialize BCMA bus (err %d)", err); bcm47xx_fill_bcma_boardinfo(&bcm47xx_bus.bcma.bus.boardinfo, NULL); diff --git a/target/linux/brcm47xx/patches-3.10/830-huawei_e970_support.patch b/target/linux/brcm47xx/patches-3.10/830-huawei_e970_support.patch index 4cae1eac755..ec3818981da 100644 --- a/target/linux/brcm47xx/patches-3.10/830-huawei_e970_support.patch +++ b/target/linux/brcm47xx/patches-3.10/830-huawei_e970_support.patch @@ -8,7 +8,7 @@ #include #include #include -@@ -254,6 +255,33 @@ void __init plat_mem_setup(void) +@@ -239,6 +240,33 @@ void __init plat_mem_setup(void) mips_set_machine_name(bcm47xx_board_get_name()); } @@ -42,7 +42,7 @@ static int __init bcm47xx_register_bus_complete(void) { switch (bcm47xx_bus_type) { -@@ -268,6 +296,8 @@ static int __init bcm47xx_register_bus_c +@@ -253,6 +281,8 @@ static int __init bcm47xx_register_bus_c break; #endif }