Messages in this thread |  | | From | Linus Walleij <> | Date | Fri, 8 Dec 2017 15:40:49 +0100 | Subject | Re: [PATCH 0/4] Add support for muxing individual pins |
| |
On Fri, Dec 8, 2017 at 3:29 PM, Charles Keepax <ckeepax@opensource.cirrus.com> wrote:
> (...) I have finally > managed to get some time to look over the pinctrl-single stuff. > > Naively one could convert the pinctrl-single stuff over to use > the patches I proposed creating one large group for the driver > and then mux each pin individually from within that. However I > am not really sure it would make sense. 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. My thinking had been more along the lines of you > perhaps have a group that represents an I2S port but you can also > individually assign each of those pins as a GPIO when not in use > as the I2S port.
So then I toss the qcom driver into the game instead :)
If you look at drivers/pinctrl/qcom/* e.g. pinctrl-ipq4019.c or essentially any of the subdrivers, you find exactly this scenario.
I am concerned that if we add infrastructure for this, it needs to have more than one user. Qualcomm does fit your description above I think.
Yours, Linus Walleij
|  |