]> git.kernelconcepts.de Git - karo-tx-uboot.git/commitdiff
gpio: msm: use sane default values for gpio-count
authorLothar Waßmann <LW@KARO-electronics.de>
Wed, 8 Mar 2017 14:23:12 +0000 (15:23 +0100)
committerLothar Waßmann <LW@KARO-electronics.de>
Mon, 13 Mar 2017 15:36:13 +0000 (16:36 +0100)
Use the well known default values for 'gpio-count' (effectively making
this property optional), so that the driver can be instantiated from a
Linux DTB which does not provide the 'gpio-count' property.

drivers/gpio/msm_gpio.c
drivers/gpio/pm8916_gpio.c

index 03029792c2a7dcb72866a1423183cac794d23464..085220f4c0b3b186adf22edc800049f4304b577a 100644 (file)
 DECLARE_GLOBAL_DATA_PTR;
 
 /* Register offsets */
-#define GPIO_CONFIG_OFF(no)         ((no) * 0x1000)
-#define GPIO_IN_OUT_OFF(no)         ((no) * 0x1000 + 0x4)
+#define GPIO_CONFIG_OFF(no)        ((no) * 0x1000)
+#define GPIO_IN_OUT_OFF(no)        ((no) * 0x1000 + 0x4)
 
 /* OE */
-#define GPIO_OE_DISABLE  (0x0 << 9)
-#define GPIO_OE_ENABLE   (0x1 << 9)
-#define GPIO_OE_MASK     (0x1 << 9)
+#define GPIO_OE_DISABLE (0x0 << 9)
+#define GPIO_OE_ENABLE  (0x1 << 9)
+#define GPIO_OE_MASK    (0x1 << 9)
 
 /* GPIO_IN_OUT register shifts. */
-#define GPIO_IN          0
-#define GPIO_OUT         1
+#define GPIO_IN                0
+#define GPIO_OUT       1
 
 struct msm_gpio_bank {
        phys_addr_t base;
@@ -107,7 +107,7 @@ static int msm_gpio_ofdata_to_platdata(struct udevice *dev)
        struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev);
 
        uc_priv->gpio_count = fdtdec_get_int(gd->fdt_blob, dev->of_offset,
-                                            "gpio-count", 0);
+                                            "gpio-count", 122);
        uc_priv->bank_name = fdt_getprop(gd->fdt_blob, dev->of_offset,
                                         "gpio-bank-name", NULL);
        if (uc_priv->bank_name == NULL)
index 0b619758438f856fb664b572a007579139f39784..dca7dfd822b91676da2cf414fd5b2f4562cd2f3d 100644 (file)
@@ -194,11 +194,11 @@ static int pm8916_gpio_ofdata_to_platdata(struct udevice *dev)
        struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev);
 
        uc_priv->gpio_count = fdtdec_get_int(gd->fdt_blob, dev->of_offset,
-                                            "gpio-count", 0);
+                                            "gpio-count", 4);
        uc_priv->bank_name = fdt_getprop(gd->fdt_blob, dev->of_offset,
                                         "gpio-bank-name", NULL);
        if (uc_priv->bank_name == NULL)
-               uc_priv->bank_name = "pm8916";
+               uc_priv->bank_name = "pmic";
 
        return 0;
 }