When CMD_GPIO is enabled the command 'gpio status -a' can cause
a hang or reboot if GPIO banks are not enabled, because it scans
all banks.  This patch enables all GPIO banks so 'gpio status -a'
can fully execute.

Signed-off-by: Adam Ford <[email protected]>

diff --git a/arch/arm/mach-omap2/omap3/clock.c 
b/arch/arm/mach-omap2/omap3/clock.c
index b9d92c62b1..9a03bfa9d3 100644
--- a/arch/arm/mach-omap2/omap3/clock.c
+++ b/arch/arm/mach-omap2/omap3/clock.c
@@ -750,23 +750,23 @@ void per_clocks_enable(void)
        setbits_le32(&prcm_base->iclken_per, 0x00000800);
 #endif
 
-#ifdef CONFIG_OMAP3_GPIO_2
+#if (CONFIG_IS_ENABLED(OMAP3_GPIO_2) || CONFIG_IS_ENABLED(CMD_GPIO))
        setbits_le32(&prcm_base->fclken_per, 0x00002000);
        setbits_le32(&prcm_base->iclken_per, 0x00002000);
 #endif
-#ifdef CONFIG_OMAP3_GPIO_3
+#if (CONFIG_IS_ENABLED(OMAP3_GPIO_3) || CONFIG_IS_ENABLED(CMD_GPIO))
        setbits_le32(&prcm_base->fclken_per, 0x00004000);
        setbits_le32(&prcm_base->iclken_per, 0x00004000);
 #endif
-#ifdef CONFIG_OMAP3_GPIO_4
+#if (CONFIG_IS_ENABLED(OMAP3_GPIO_4) || CONFIG_IS_ENABLED(CMD_GPIO))
        setbits_le32(&prcm_base->fclken_per, 0x00008000);
        setbits_le32(&prcm_base->iclken_per, 0x00008000);
 #endif
-#ifdef CONFIG_OMAP3_GPIO_5
+#if (CONFIG_IS_ENABLED(OMAP3_GPIO_5) || CONFIG_IS_ENABLED(CMD_GPIO))
        setbits_le32(&prcm_base->fclken_per, 0x00010000);
        setbits_le32(&prcm_base->iclken_per, 0x00010000);
 #endif
-#ifdef CONFIG_OMAP3_GPIO_6
+#if (CONFIG_IS_ENABLED(OMAP3_GPIO_6) || CONFIG_IS_ENABLED(CMD_GPIO))
        setbits_le32(&prcm_base->fclken_per, 0x00020000);
        setbits_le32(&prcm_base->iclken_per, 0x00020000);
 #endif
-- 
2.17.1

_______________________________________________
U-Boot mailing list
[email protected]
https://lists.denx.de/listinfo/u-boot

Reply via email to