pinctrl: single: dump pinmux register value
authorHaojian Zhuang <haojian.zhuang@gmail.com>
Wed, 7 Nov 2012 15:19:42 +0000 (23:19 +0800)
committerLinus Walleij <linus.walleij@linaro.org>
Thu, 15 Nov 2012 14:11:07 +0000 (15:11 +0100)
Dump pinmux register value, not only function part in the pinmux
register.

Also fix the issue on caluclating pin offset. The last parameter
should be pin number, not register offset.

Signed-off-by: Haojian Zhuang <haojian.zhuang@gmail.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/pinctrl-single.c

index 726a729..145025f 100644 (file)
@@ -244,15 +244,15 @@ static int pcs_get_group_pins(struct pinctrl_dev *pctldev,
 
 static void pcs_pin_dbg_show(struct pinctrl_dev *pctldev,
                                        struct seq_file *s,
-                                       unsigned offset)
+                                       unsigned pin)
 {
        struct pcs_device *pcs;
-       unsigned val;
+       unsigned val, mux_bytes;
 
        pcs = pinctrl_dev_get_drvdata(pctldev);
 
-       val = pcs->read(pcs->base + offset);
-       val &= pcs->fmask;
+       mux_bytes = pcs->width / BITS_PER_BYTE;
+       val = pcs->read(pcs->base + pin * mux_bytes);
 
        seq_printf(s, "%08x %s " , val, DRIVER_NAME);
 }