Re: [PATCH 1/5] pinctrl: core: Use delayed work for hogs
From: Tony Lindgren <tony@atomide.com>
Date: 2017-01-11 16:28:15
Also in:
linux-gpio, linux-omap, linux-renesas-soc, lkml
From: Tony Lindgren <tony@atomide.com>
Date: 2017-01-11 16:28:15
Also in:
linux-gpio, linux-omap, linux-renesas-soc, lkml
* Linus Walleij [off-list ref] [170111 07:34]:
On Tue, Jan 10, 2017 at 8:19 PM, Tony Lindgren [off-list ref] wrote:quoted
Below is an experimental fix to intorduce pinctrl_start() that I've tested with pinctrl-single. Then we should probably make all pin controller drivers call pinctrl_start() to properly fix the issue of struct pinctrl_dev handle not being initialized before driver functions are called.Hm I guess that could work, but can we keep pinctrl_register() with the old semantics and add a separate pinctrl_register_and_defer() for those who just wanna start it later by a separate call? Then we don't need any special flags.
OK I'll take a look.
quoted
Or do you guys have any better ideas?Not really. So you mean revert the previous patch and apply something like this instead?
Let me first take a look to see if we can fix it by making drivers using GENERIC_PINCTRL_GROUPS or GENERIC_PINMUX_FUNCTIONS register with pinctrl_register_and_defer(). I'll post a patch for that today. Then maybe for v4.12 we can attempt to move all pin controller drivers to using it so we can fix the problem for good. Regards, Tony