From 4f4066d3e057567c0f78a3069ef967fd787ac94a Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Sun, 28 Feb 2010 21:24:34 +0000 Subject: add support for 2.6.33 SVN-Revision: 19921 --- ...init_gpio_out_low_high_current_value_at_boot.patch | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 target/linux/brcm63xx/patches-2.6.33/210-init_gpio_out_low_high_current_value_at_boot.patch (limited to 'target/linux/brcm63xx/patches-2.6.33/210-init_gpio_out_low_high_current_value_at_boot.patch') diff --git a/target/linux/brcm63xx/patches-2.6.33/210-init_gpio_out_low_high_current_value_at_boot.patch b/target/linux/brcm63xx/patches-2.6.33/210-init_gpio_out_low_high_current_value_at_boot.patch new file mode 100644 index 0000000000..902840b39b --- /dev/null +++ b/target/linux/brcm63xx/patches-2.6.33/210-init_gpio_out_low_high_current_value_at_boot.patch @@ -0,0 +1,19 @@ +To avoid glitch during gpio initialisation, fetch gpio output +registers values left by bootloader. + +Signed-off-by: Maxime Bizon +--- + arch/mips/bcm63xx/gpio.c | 2 ++ + 1 files changed, 2 insertions(+), 0 deletions(-) + +--- a/arch/mips/bcm63xx/gpio.c ++++ b/arch/mips/bcm63xx/gpio.c +@@ -125,6 +125,8 @@ static struct gpio_chip bcm63xx_gpio_chi + + int __init bcm63xx_gpio_init(void) + { ++ gpio_out_low = bcm_gpio_readl(GPIO_DATA_LO_REG); ++ gpio_out_high = bcm_gpio_readl(GPIO_DATA_HI_REG); + bcm63xx_gpio_chip.ngpio = bcm63xx_gpio_count(); + pr_info("registering %d GPIOs\n", bcm63xx_gpio_chip.ngpio); + -- cgit v1.2.3