[PATCH 2/2] bcm63xx: only set the proper GPIO overlay settings
From: Florian Fainelli <florian@openwrt.org>
Date: 2009-08-31 18:28:27
Subsystem:
mips, the rest · Maintainers:
Thomas Bogendoerfer, Linus Torvalds
From: Florian Fainelli <florian@openwrt.org>
Date: 2009-08-31 18:28:27
Subsystem:
mips, the rest · Maintainers:
Thomas Bogendoerfer, Linus Torvalds
This patch makes the GPIO pin multiplexing configuration read the initial GPIO mode register value instead of setting it initially to 0, then setting the correct bits, this is safer. Signed-off-by: Florian Fainelli <florian@openwrt.org> ---
diff --git a/arch/mips/bcm63xx/boards/board_bcm963xx.c b/arch/mips/bcm63xx/boards/board_bcm963xx.c
index cfe32af..6ae4242 100644
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c@@ -634,7 +634,7 @@ void __init board_prom_init(void) /* setup pin multiplexing depending on board enabled device, * this has to be done this early since PCI init is done * inside arch_initcall */ - val = 0; + val = bcm_gpio_readl(GPIO_MODE_REG); #ifdef CONFIG_PCI if (board.has_pci) {