From 90345c92a82c92203fcf5d00678d15c95f31a379 Mon Sep 17 00:00:00 2001 From: Tom Rini Date: Tue, 5 Jan 2016 12:17:15 -0500 Subject: [PATCH] am33xx/am43xx: Add platform data for GPIOs On these platforms we have many cases of boards that enable device model and GPIO support but do not enable OF_CONTROL and pass in a device tree with the binary. We need to bring in the platform data here as well. Tested on Beaglebone Black. Reported-by: Robert Nelson Reported-by: Francisco Aguerre Reported-by: Jason Kridner Signed-off-by: Tom Rini --- arch/arm/cpu/armv7/am33xx/board.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/arch/arm/cpu/armv7/am33xx/board.c b/arch/arm/cpu/armv7/am33xx/board.c index 466348f940..e8d5be32b4 100644 --- a/arch/arm/cpu/armv7/am33xx/board.c +++ b/arch/arm/cpu/armv7/am33xx/board.c @@ -64,8 +64,31 @@ U_BOOT_DEVICES(am33xx_uarts) = { # endif # endif }; + +#ifdef CONFIG_DM_GPIO +static const struct omap_gpio_platdata am33xx_gpio[] = { + { 0, AM33XX_GPIO0_BASE }, + { 1, AM33XX_GPIO1_BASE }, + { 2, AM33XX_GPIO2_BASE }, + { 3, AM33XX_GPIO3_BASE }, +#ifdef CONFIG_AM43XX + { 4, AM33XX_GPIO4_BASE }, + { 5, AM33XX_GPIO5_BASE }, #endif +}; +U_BOOT_DEVICES(am33xx_gpios) = { + { "gpio_omap", &am33xx_gpio[0] }, + { "gpio_omap", &am33xx_gpio[1] }, + { "gpio_omap", &am33xx_gpio[2] }, + { "gpio_omap", &am33xx_gpio[3] }, +#ifdef CONFIG_AM43XX + { "gpio_omap", &am33xx_gpio[4] }, + { "gpio_omap", &am33xx_gpio[5] }, +#endif +}; +#endif +#endif #ifndef CONFIG_DM_GPIO static const struct gpio_bank gpio_bank_am33xx[] = { -- 2.39.5