From: Adam Ford Date: Tue, 12 Jun 2018 01:05:38 +0000 (-0500) Subject: gpio: omap_gpio: Name GPIO's by bank and index with DM_GPIO X-Git-Tag: v2018.07-rc2~20 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=b4c3fb087b06ec56cc325e2e73f8f497be89d129;p=oweals%2Fu-boot.git gpio: omap_gpio: Name GPIO's by bank and index with DM_GPIO There are multiple GPIO banks with up to 32 pins / bank. When using 'gpio status -a' to read the pins, this patch displays both GPIO_ similar to how the device trees display in addition to displaying gpio_# Signed-off-by: Adam Ford --- diff --git a/drivers/gpio/omap_gpio.c b/drivers/gpio/omap_gpio.c index d128f942a0..79a975ce71 100644 --- a/drivers/gpio/omap_gpio.c +++ b/drivers/gpio/omap_gpio.c @@ -288,11 +288,17 @@ 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; - uc_priv->bank_name = plat->port_name; + banknum = plat->bank_index; + sprintf(name, "GPIO%d_", banknum + 1); + str = strdup(name); + if (!str) + return -ENOMEM; + uc_priv->bank_name = str; uc_priv->gpio_count = GPIO_PER_BANK; bank->base = (void *)plat->base; - return 0; }