diff options
author | Enric Balletbo i Serra <eballetbo@gmail.com> | 2014-01-25 22:52:22 +0100 |
---|---|---|
committer | Tom Rini <trini@ti.com> | 2014-03-06 11:21:37 -0500 |
commit | dd1e8583ee533a349c03ed4d75446898fe8dbac6 (patch) | |
tree | dd14fcfb0ee38e844acd3d2de123ebd8a9a39bcc /include/configs/omap3_igep00x0.h | |
parent | 4b75fd510076f2261c5e21b9b8cf75c9f01ded3c (diff) | |
download | u-boot-imx-dd1e8583ee533a349c03ed4d75446898fe8dbac6.zip u-boot-imx-dd1e8583ee533a349c03ed4d75446898fe8dbac6.tar.gz u-boot-imx-dd1e8583ee533a349c03ed4d75446898fe8dbac6.tar.bz2 |
OMAP3: igep00x0: Enable required clocks for GPIO that are used.
Enable required clocks for GPIO to fix a boot issue introduced by commit
f33b9bd3984fb11e1d8566a866adc5957b1e1c9d (arm: omap3: Enable clocks for
peripherals only if they are used).
Without this patch the u-boot freezes after the following messages
OMAP36XX/37XX-GP ES1.2, CPU-OPP2, L3-200MHz, Max CPU Clock 1 Ghz
IGEPv2 + LPDDR/NAND
I2C: ready
DRAM: 512 MiB
NAND: 512 MiB
MMC: OMAP SD/MMC: 0
Diving into the issue, the sequence that produces the u-boot freezes is
setup_net_chip
|--> gpio_direction_out
|--> _set_gpio_dataout
|--> __raw_writel
To avoid this we just need enable the clocks for GPIOs that are used, but it
would be interesting implement a mechanism to protect these situations and
make sure that the clock is enabled when we request a GPIO.
Signed-off-by: Enric Balletbo i Serra <eballetbo@gmail.com>
Diffstat (limited to 'include/configs/omap3_igep00x0.h')
-rw-r--r-- | include/configs/omap3_igep00x0.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/configs/omap3_igep00x0.h b/include/configs/omap3_igep00x0.h index 20fbbec..8cc23c1 100644 --- a/include/configs/omap3_igep00x0.h +++ b/include/configs/omap3_igep00x0.h @@ -37,6 +37,11 @@ #define CONFIG_SHOW_BOOT_PROGRESS #endif +/* GPIO banks */ +#define CONFIG_OMAP3_GPIO_3 /* GPIO64 .. 95 is in GPIO bank 3 */ +#define CONFIG_OMAP3_GPIO_5 /* GPIO128..159 is in GPIO bank 5 */ +#define CONFIG_OMAP3_GPIO_6 /* GPIO160..191 is in GPIO bank 6 */ + /* USB */ #define CONFIG_MUSB_UDC 1 #define CONFIG_USB_OMAP3 1 |