All of lore.kernel.org
 help / color / mirror / Atom feed
From: Matt Porter <mporter@ti.com>
To: Linus Walleij <linus.walleij@linaro.org>
Cc: Tony Lindgren <tony@atomide.com>,
	Koen Kooi <koen@dominion.thruhere.net>,
	List List <linux-omap@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: replacement for /sys/kernel/debug/omap_mux in DT/pinctrl land ?
Date: Wed, 26 Sep 2012 12:15:46 -0400	[thread overview]
Message-ID: <20120926161546.GC5641@beef> (raw)
In-Reply-To: <CACRpkdYqVC4Vou+0Mn1OmQg8vPxDULDcFDD0yV5nassqkE1Zag@mail.gmail.com>

On Wed, Sep 26, 2012 at 03:03:27PM +0200, Linus Walleij wrote:
> On Wed, Sep 26, 2012 at 2:56 PM, Matt Porter <mporter@ti.com> wrote:
> > Adding Linus W. and lkml.
> > On Wed, Sep 26, 2012 at 01:46:45PM +0200, Koen Kooi wrote:
> >> Hi,
> >>
> >> With a patched 3.6rc7 on my beaglebone I can set the pinmux for pins using pinctrl and that seems to work. On the 3.2 vendor tree there was the omap_mux driver with an awesome debugfs interface:
> >>
> >> # cat /sys/kernel/debug/omap_mux/lcd_data0
> >> name: lcd_data0.ehrpwm2A (0x44e108a0/0x8a0 = 0x0003), b NA, t NA
> >> mode: OMAP_PIN_OUTPUT | OMAP_MUX_MODE3
> >> signals: lcd_data0 | gpmc_a0 | pr1_mii_mt0_clk | ehrpwm2A | NA | pr1_pru1_pru_r30_0 | pr1_pru1_pru_r31_0 | gpio2_6
> >>
> >> Notice how it tells me that it's muxed the PWM in 2 ways: signal name (ehrpwm2A) and register content (0x0003). Compare to pinctrl:
> >>
> >> root@bone-mainline:/sys/kernel/debug/pinctrl/44e10800.pinmux# grep 8a0 *
> >> pinconf-pins:pin 40 (44e108a0):
> >> pingroups:pin 40 (44e108a0)
> >> pinmux-pins:pin 40 (44e108a0): 4a300000.pruss (GPIO UNCLAIMED) function pinmux_pruss_led_pins group pinmux_pruss_led_pins
> >> pins:pin 40 (44e108a0)  pinctrl-single
> >>
> >> What is that pin muxed to? It is part of the 'pinmux_pruss_led_pins' in the DT, but debugfs remains mute on how pin 40 is muxed.
> >
> > It does seem like a pretty big gap in the pinctrl/pinmux debugfs
> > interface when viewed from an OMAP perspective. Ideally there would
> > be a pinctrl/pinmux hook to the pinmux driver to provide the detailed
> > h/w specific pin state info.
> 
> So add the hooks you need?
 
Ok. :)

> I assume you are using Tony's pinctrl-single driver, so Tony is the one to ask.

Yes, so roughly for pinctrl-single I have the following...likely broken
for arbitrary register sizes but a starting point. Tony, any thoughts
about this?

Koen: you just need a userspace tool that groks the raw data for human
consumption. The nice thing is that the old omap_mux implementation had
plenty of OMAP-isms in the parser that didn't apply to AM33xx. A
userspace tool can do a better job of parsing on a per-part basis.

--- a/drivers/pinctrl/pinctrl-single.c
+++ b/drivers/pinctrl/pinctrl-single.c
@@ -246,7 +246,15 @@ static void pcs_pin_dbg_show(struct pinctrl_dev *pctldev,
 					struct seq_file *s,
 					unsigned offset)
 {
-	seq_printf(s, " " DRIVER_NAME);
+	struct pcs_device *pcs;
+	unsigned val;
+
+	pcs = pinctrl_dev_get_drvdata(pctldev);
+
+	val = pcs->read(pcs->base + offset);
+	val &= pcs->fmask;
+
+	seq_printf(s, "%08x %s " , val, DRIVER_NAME);
 }
 
 static void pcs_dt_free_map(struct pinctrl_dev *pctldev,

  reply	other threads:[~2012-09-26 16:15 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-26 11:46 replacement for /sys/kernel/debug/omap_mux in DT/pinctrl land ? Koen Kooi
2012-09-26 12:56 ` Matt Porter
2012-09-26 13:03   ` Linus Walleij
2012-09-26 16:15     ` Matt Porter [this message]
2012-09-26 17:21       ` Koen Kooi
2012-09-26 18:52         ` Tony Lindgren
2012-09-26 18:53           ` Koen Kooi
2012-09-26 19:04             ` Tony Lindgren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120926161546.GC5641@beef \
    --to=mporter@ti.com \
    --cc=koen@dominion.thruhere.net \
    --cc=linus.walleij@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.