mirror of https://gitee.com/openkylin/linux.git
f7519d8c82
In preparation to converting Amstrad Delta on-board latches to basic_mmio_gpio devices, registration of platform devices which depend on latches and will require initialization of their GPIO pins first, should be moved out of .machine_init down to late_initcall level, as the gpio-generic driver is not available until device_initcall time. The latch reset operation, which will be replaced with GPIO initialization, must also be moved to late_initcall for the same reason. Since there was already another, separate arch_initcall function for setting up one of those latch dependent devices, the on-board modem device, reuse that function, i.e., rename it to a name that matches the new purpose, extend with other device setup relocated from .machine_init, and move down to the late_initcall level. While being at it, add missing gpio_free() in case the modem platform device registration fails. Thanks to Tony Lindgren <tony@atomide.com> who suggested this approach instead of shifting up the gpio-generic driver initialization. In addition, defer registration of the Amstrad Delta ASoC and serio devices, done from their device driver files, until late_initcall time, as those drivers will depend on their GPIO pins already requested from the board late_init() function until updated to register their GPIO pins themselves. Signed-off-by: Janusz Krzysztofik <jkrzyszt@tis.icnet.pl> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Tony Lindgren <tony@atomide.com> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
altera_ps2.c | ||
ambakmi.c | ||
ams_delta_serio.c | ||
at32psif.c | ||
ct82c710.c | ||
gscps2.c | ||
hil_mlc.c | ||
hp_sdc.c | ||
hp_sdc_mlc.c | ||
i8042-io.h | ||
i8042-ip22io.h | ||
i8042-jazzio.h | ||
i8042-ppcio.h | ||
i8042-snirm.h | ||
i8042-sparcio.h | ||
i8042-unicore32io.h | ||
i8042-x86ia64io.h | ||
i8042.c | ||
i8042.h | ||
libps2.c | ||
maceps2.c | ||
parkbd.c | ||
pcips2.c | ||
ps2mult.c | ||
q40kbd.c | ||
rpckbd.c | ||
sa1111ps2.c | ||
serio.c | ||
serio_raw.c | ||
serport.c | ||
xilinx_ps2.c |