Thread (15 messages) 15 messages, 4 authors, 2017-12-09

Re: [PATCH 0/4] Add support for muxing individual pins

From: Charles Keepax <ckeepax@opensource.cirrus.com>
Date: 2017-12-08 17:16:55
Also in: lkml

On Fri, Dec 08, 2017 at 08:28:18AM -0800, Tony Lindgren wrote:
* Charles Keepax [off-list ref] [171208 14:31]:
quoted
From the implementation so far the pinctrl-single stuff appears to
target systems where there isn't really a concept of groups. Each
pin is just a completely separate entry and you can only configure
things one pin at a time. In that case it almost makes more sense
to model each pin as an individual group such that it is clearly
distinct from the others.
Maybe check again or else I don't follow you :)

The pinctrl groups are created dynamically with pinctrl-single
based on how the pins are grouped in the dts file:

mmc1_pins: pinmux_mmc1_pins {
	pinctrl-single,pins = <
		OMAP4_IOPAD(0x0e2, PIN_INPUT_PULLUP | MUX_MODE0)
		OMAP4_IOPAD(0x0e4, PIN_INPUT_PULLUP | MUX_MODE0)
		OMAP4_IOPAD(0x0e6, PIN_INPUT_PULLUP | MUX_MODE0)
		OMAP4_IOPAD(0x0e8, PIN_INPUT_PULLUP | MUX_MODE0)
		OMAP4_IOPAD(0x0ea, PIN_INPUT_PULLUP | MUX_MODE0)
		OMAP4_IOPAD(0x0ec, PIN_INPUT_PULLUP | MUX_MODE0)
	>;
};

Then on a booted system we have the following under
/sys/kernel/debug/pinctrl/4a100040.pinmux/pingroups:

group: pinmux_mmc1_pins
pin 81 (PIN81)
pin 82 (PIN82)
pin 83 (PIN83)
pin 84 (PIN84)
pin 85 (PIN85)
pin 86 (PIN86)
Hmm... apologies, I suspect this is me that needs to review the
code some more. So this is actually creating a group per user
rather than per controller.

Although I guess my original point still stands that I am not
clear how this would benefit from my patches to allow muxing of
individual pins within a group. Since I guess each user will just
get a group created for the pins they use regardless. Or am I
missing something here too?

Thanks,
Charles
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help