Re: [PATCH 2/2] Make non-linear GPIO ranges accesible from gpiolib
From: Stephen Warren <hidden>
Date: 2013-06-25 15:39:32
Also in:
lkml
On 06/25/2013 09:28 AM, Linus Walleij wrote:
On Fri, Jun 21, 2013 at 11:17 PM, Stephen Warren [off-list ref] wrote:quoted
And finally, I don't really like using pin groups for the purpose of defining these mappings, since I intended them to purely represent the mapping from register fields to the set of affected pins. However, I can see an argument for doing this, since the pin groups are in fact still representing /some/ aspect of the pinctrl internal HW.The groups concept was part of the first pinctrl commit 2744e8afb3b76343e7eb8197e8b3e085036010a5 and there the intention was clearly just to define a discrete set of pins. And some drivers use it like this still, with no connection to physical registers, i.MX come to mind. But I do seem to recall some endless discussions about this, I think we need to agree to disagree.
But the whole point of a subsystem is to provide clear common semantics across all the different drivers that comprise it. IMHO, it's a great failing of pinctrl that it doesn't clearly define its data model at all, and just leaves individual driver authors to use groups in whatever random fashion they want. We really should have different entries in the pinctrl data model for these different concepts (real HW groups, and logical/virtual/SW groups) since they're entirely different things with different semantics. Perhaps it's simplest if I just step out of pinctrl and let it exist as it is.