summaryrefslogtreecommitdiffstats
path: root/drivers/pinctrl/pinmux.c
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2012-02-24 06:53:04 +0100
committerLinus Walleij <linus.walleij@linaro.org>2012-02-29 19:10:42 +0100
commit1cf94c45ca31c0ad563e72b095782346cba26b6c (patch)
treee652152b9b46cf0efe40891e06bfdf64266d4928 /drivers/pinctrl/pinmux.c
parentpinctrl: remove pin and hogs locks from struct pinctrl_dev (diff)
downloadlinux-1cf94c45ca31c0ad563e72b095782346cba26b6c.tar.xz
linux-1cf94c45ca31c0ad563e72b095782346cba26b6c.zip
pinctrl: make the pinmux-pins more helpful
The debugfs file pinmux-pins used to tell which function was enabled but now states simply which device owns the pin. Being owned by the pinctrl driver itself means just that it's hogged so be a bit more helpful by printing that. ChangeLog v1->v2: - Preserve the self-referential owner field, just clarify that when the pin controller states itself as owner this means that it's hogged. Acked-by: Dong Aisheng <dong.aisheng@linaro.org> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/pinctrl/pinmux.c')
-rw-r--r--drivers/pinctrl/pinmux.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/pinctrl/pinmux.c b/drivers/pinctrl/pinmux.c
index 98b89d6cffb0..2a405618b448 100644
--- a/drivers/pinctrl/pinmux.c
+++ b/drivers/pinctrl/pinmux.c
@@ -626,8 +626,8 @@ static int pinmux_pins_show(struct seq_file *s, void *what)
/* The pin number can be retrived from the pin controller descriptor */
for (i = 0; i < pctldev->desc->npins; i++) {
-
struct pin_desc *desc;
+ bool is_hog = false;
pin = pctldev->desc->pins[i].number;
desc = pin_desc_get(pctldev, pin);
@@ -635,9 +635,14 @@ static int pinmux_pins_show(struct seq_file *s, void *what)
if (desc == NULL)
continue;
- seq_printf(s, "pin %d (%s): %s\n", pin,
+ if (desc->owner &&
+ !strcmp(desc->owner, pinctrl_dev_get_name(pctldev)))
+ is_hog = true;
+
+ seq_printf(s, "pin %d (%s): %s%s\n", pin,
desc->name ? desc->name : "unnamed",
- desc->owner ? desc->owner : "UNCLAIMED");
+ desc->owner ? desc->owner : "UNCLAIMED",
+ is_hog ? " (HOG)" : "");
}
return 0;