Hello Linus,
On 29/11/2013 14:31, Linus Walleij wrote:
On Fri, Nov 29, 2013 at 11:30 AM, boris brezillon
<b.brezillon@xxxxxxxxxxx> wrote:
On 29/11/2013 11:03, Linus Walleij wrote:
I guess one way is to obtain this GPIO in board code and just
flick it depending on which device you register.
(...)
The whole goal of moving from board files to dt is to drop all board
specific processing or initialization and only keep a common description
with generic drivers capable of handling common use cases.
I'm not sure providing new board specific drivers is a good solution
(even if it is the simplest way to achieve our goal).
Could we have something similar to pinctrl but with gpios :
when the device is probed the device/driver core code request the gpio
configure it appropriately and set it to the requested value (if configured
as output).
This has been suggested under the name "GPIO hogs" in the past.
It would work similar to how pinctrl hogs work by associating the
GPIO line the controller itself, using some specific string
like gpio-input-hogs = <...> / gpio-output-hogs = <...>;
The gpiolib core will then grab and set up these before
returning from the registration call so noone ever gets a chance
to use them.
One more question, and I'm done :).
In which case should we use output-high or output-low config
instead of gpio-output-hogs ?
Best Regards,
Boris
These are just thoughts, and I guess introducing new code in the
device/driver core
code is not that easy, especially when this code is here to handle specific
case
like ours.
It is very easy, just write the patch, iterate it (these patches get
a lot of scrutiny as it is core code, so expect some work and time
to get it done), and then unless there is a blocker, I would merge it.
The concept is entirely sound, just that someone needs to step
up and do the work...
Yours,
Linus Walleij
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html