diff mbox series

[U-Boot] GPIO: omap_gpio: Fix gpio name names with device tree

Message ID 20180817193758.21009-1-aford173@gmail.com
State Accepted
Commit 535f46dad920094df12b2d19f071db2e6a8ae0ab
Delegated to: Tom Rini
Headers show
Series [U-Boot] GPIO: omap_gpio: Fix gpio name names with device tree | expand

Commit Message

Adam Ford Aug. 17, 2018, 7:37 p.m. UTC
The GPIO bank numbers do not appear in the device tree, so this
patch makes the gpio name based on the address
(ie gpio@49054000_31 vs gpio4_31)

adam

Signed-off-by: Adam Ford <aford173@gmail.com>

Comments

Derald Woods Aug. 26, 2018, 7:54 p.m. UTC | #1
On Fri, Aug 17, 2018 at 02:37:58PM -0500, Adam Ford wrote:
> The GPIO bank numbers do not appear in the device tree, so this
> patch makes the gpio name based on the address
> (ie gpio@49054000_31 vs gpio4_31)
> 
> adam
> 
> Signed-off-by: Adam Ford <aford173@gmail.com>

Works for omap3-evm and omap3-beagle-xm.

OMAP3_EVM # gpio status   
Bank gpio@48310000_:
gpio@48310000_7: output: 1 [x]
OMAP3_EVM # gpio status -a
Bank gpio@48310000_:
gpio@48310000_0: input: 0 [ ]
gpio@48310000_1: input: 0 [ ]
gpio@48310000_2: input: 0 [ ]
gpio@48310000_3: input: 0 [ ]
gpio@48310000_4: input: 0 [ ]
gpio@48310000_5: input: 1 [ ]
gpio@48310000_6: input: 1 [ ]
gpio@48310000_7: output: 1 [x] 
gpio@48310000_8: input: 0 [ ]
gpio@48310000_9: input: 0 [ ]
[...]

BeagleBoard # gpio status
Bank gpio@49056000_:
gpio@49056000_19: output: 1 [x] USB PHY1 reset
gpio@49056000_21: output: 1 [x] led
gpio@49056000_22: output: 1 [x] led

Bank gpio@49058000_:
gpio@49058000_11: input: 0 [x] rev0
gpio@49058000_12: input: 1 [x] rev1
gpio@49058000_13: input: 0 [x] rev2
BeagleBoard # gpio status -a
Bank gpio@48310000_:
gpio@48310000_0: input: 0 [ ]
gpio@48310000_1: input: 0 [ ]
gpio@48310000_2: input: 0 [ ]
gpio@48310000_3: input: 0 [ ]
gpio@48310000_4: input: 0 [ ]
gpio@48310000_5: input: 0 [ ]
gpio@48310000_6: input: 0 [ ]
gpio@48310000_7: input: 0 [ ]
gpio@48310000_8: input: 0 [ ]
gpio@48310000_9: input: 0 [ ]
[...]

Tested-by: Derald D. Woods <woods.technical@gmail.com>

> 
> diff --git a/drivers/gpio/omap_gpio.c b/drivers/gpio/omap_gpio.c
> index 651f6994e4..0f1ddeff92 100644
> --- a/drivers/gpio/omap_gpio.c
> +++ b/drivers/gpio/omap_gpio.c
> @@ -288,11 +288,9 @@ static int omap_gpio_probe(struct udevice *dev)
>  	struct gpio_bank *bank = dev_get_priv(dev);
>  	struct omap_gpio_platdata *plat = dev_get_platdata(dev);
>  	struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev);
> -	int banknum;
>  	char name[18], *str;
>  
> -	banknum = plat->bank_index;
> -	sprintf(name, "GPIO%d_", banknum + 1);
> +	sprintf(name, "gpio@%4x_", (unsigned int)plat->base);
>  	str = strdup(name);
>  	if (!str)
>  		return -ENOMEM;
> -- 
> 2.17.1
> 
> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> https://lists.denx.de/listinfo/u-boot
Tom Rini Sept. 18, 2018, 9:24 p.m. UTC | #2
On Fri, Aug 17, 2018 at 02:37:58PM -0500, Adam Ford wrote:

> The GPIO bank numbers do not appear in the device tree, so this
> patch makes the gpio name based on the address
> (ie gpio@49054000_31 vs gpio4_31)
> 
> adam
> 
> Signed-off-by: Adam Ford <aford173@gmail.com>
> Tested-by: Derald D. Woods <woods.technical@gmail.com>
> 
> diff --git a/drivers/gpio/omap_gpio.c b/drivers/gpio/omap_gpio.c
> index 651f6994e4..0f1ddeff92 100644

Applied to u-boot/master, thanks!
diff mbox series

Patch

diff --git a/drivers/gpio/omap_gpio.c b/drivers/gpio/omap_gpio.c
index 651f6994e4..0f1ddeff92 100644
--- a/drivers/gpio/omap_gpio.c
+++ b/drivers/gpio/omap_gpio.c
@@ -288,11 +288,9 @@  static int omap_gpio_probe(struct udevice *dev)
 	struct gpio_bank *bank = dev_get_priv(dev);
 	struct omap_gpio_platdata *plat = dev_get_platdata(dev);
 	struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev);
-	int banknum;
 	char name[18], *str;
 
-	banknum = plat->bank_index;
-	sprintf(name, "GPIO%d_", banknum + 1);
+	sprintf(name, "gpio@%4x_", (unsigned int)plat->base);
 	str = strdup(name);
 	if (!str)
 		return -ENOMEM;