Hi Thomas, The driver I'm using that requires access to the GPIO pins is one that I've been working on. It doesn't do much, just drives a single reset line to take other hardware out of reset. The hardware that gets taken out of reset includes a few i2c GPIO expanders. The GPIO expanders use the gpio-pca953x.c driver, which uses subsys_initcall. One of the things that we found strange: With the code the way it currently is, we have access to external GPIO expanders before we were able to access the CPUs own built-in GPIO pins. Thank you, Joshua Scott On 12/05/15 19:18, Thomas Petazzoni wrote: > Dear Joshua Scott, > > On Tue, 12 May 2015 14:39:42 +1200, Joshua Scott wrote: >> The Armada-XP contains a set of GPIO pins. These pins may be used to take >> other hardware out of reset. However, the drivers used are currently not >> initialized until quite late in the boot process (module_platform_driver). >> >> This patch replaces the use of module_platform_driver with arch_initcall >> in the two drivers that are used to control the GPIO pins. This allows for >> drivers using subsys_initcall or later to access to the pins. >> >> >> Signed-off-by: Joshua Scott <joshua.scott@xxxxxxxxxxxxxxxxxxx> > Thanks for the patch. However, this goes exactly in the opposite > direction of commit dd640039e8de4135fd59d4d963487d1239d6fabe ("gpio: > mvebu: Remove initcall-based driver initialization"), which switched > from postcore_initcall() to module_platform_driver(). > > Can you describe which drivers registered at subsys_initcall() need > those GPIOs? We should be able to get around by using deferred probing. > > Thanks, > > Thomas -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html