On Fri, Apr 01, 2016 at 10:04:57AM +0200, Linus Walleij wrote: > On Thu, Mar 31, 2016 at 6:21 PM, Guenter Roeck <li...@roeck-us.net> wrote: > > On Tue, Mar 29, 2016 at 11:15:49AM -0700, Guenter Roeck wrote: > >> The sa1100 gpio driver was initialized from interrupt initialization code, > >> which is earlier than the gpio subsystem is initialized. Since commit > >> ff2b13592299 ("gpio: make the gpiochip a real device"), this is fatal > >> and causes the system to crash. > >> > >> The sa1100 gpio driver must be initialized prior to arch_initcall, since > >> its gpio pins are used in arch_initcall code, but after the gpio subsystem > >> is initialized (core_initcall). Initialize it with postcore_initcall. > >> > >> Fixes: ff2b13592299 ("gpio: make the gpiochip a real device") > >> Cc: Linus Walleij <linus.wall...@linaro.org> > >> Signed-off-by: Guenter Roeck <li...@roeck-us.net> > > > > Please ignore/drop this patch - a better (cleaner) fix is in the works > > for gpiolib. > > This delivers though. I tested it on my also regressing iPAQ. > I am a bit concerned that the gpio initialization was that early on purpose, and that by moving it we might miss some use cases. I did not find any, but that doesn't mean that there are none. Without knowing _why_ the initialization was that early, I would prefer not to touch the code if it can be avoided.
Thanks, Guenter