pinctrl: nomadik: Fix pull direction debug info
authorAndrew Halaney <ajhalaney@gmail.com>
Thu, 6 Aug 2020 15:53:25 +0000 (10:53 -0500)
committerLinus Walleij <linus.walleij@linaro.org>
Thu, 27 Aug 2020 08:25:17 +0000 (10:25 +0200)
The nomadik pinctrl hardware doesn't have any way to
determine if the active pull is up or down. Reading
the bit currently used to report if the pull is up/down
indicates if the gpio input is reading high or low, it
doesn't reflect the pull state.

For this reason change the output from "pull up"/"pull down" to
"pull enabled". This avoids confusing developers who were using
the output to determine what the pull state is.

Signed-off-by: Andrew Halaney <ajhalaney@gmail.com>
Link: https://lore.kernel.org/r/20200806155322.GA25523@ola-jn9phv2.ad.garmin.com
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/nomadik/pinctrl-nomadik.c

index ba25c4654391ead902f07b001ee92621c14068e8..657e35a75d84aad961606193d5bb089401127872 100644 (file)
@@ -931,11 +931,6 @@ static void nmk_gpio_dbg_show_one(struct seq_file *s,
                [NMK_GPIO_ALT_C+3]      = "altC3",
                [NMK_GPIO_ALT_C+4]      = "altC4",
        };
-       const char *pulls[] = {
-               "none     ",
-               "pull down",
-               "pull up  ",
-       };
 
        clk_enable(nmk_chip->clk);
        is_out = !!(readl(nmk_chip->addr + NMK_GPIO_DIR) & BIT(offset));
@@ -946,7 +941,7 @@ static void nmk_gpio_dbg_show_one(struct seq_file *s,
                mode = nmk_prcm_gpiocr_get_mode(pctldev, gpio);
 
        if (is_out) {
-               seq_printf(s, " gpio-%-3d (%-20.20s) out %s        %s",
+               seq_printf(s, " gpio-%-3d (%-20.20s) out %s           %s",
                           gpio,
                           label ?: "(none)",
                           data_out ? "hi" : "lo",
@@ -954,11 +949,12 @@ static void nmk_gpio_dbg_show_one(struct seq_file *s,
        } else {
                int irq = chip->to_irq(chip, offset);
                struct irq_desc *desc = irq_to_desc(irq);
-               int pullidx = 0;
+               const int pullidx = pull ? 1 : 0;
                int val;
-
-               if (pull)
-                       pullidx = data_out ? 2 : 1;
+               static const char * const pulls[] = {
+                       "none        ",
+                       "pull enabled",
+               };
 
                seq_printf(s, " gpio-%-3d (%-20.20s) in  %s %s",
                           gpio,