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 <aford...@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.techni...@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
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to