From: Dmitry Torokhov Date: Sun, 19 Feb 2006 05:22:51 +0000 (-0500) Subject: Input: initialize serio and gameport at subsystem level X-Git-Tag: v2.6.17-rc1~15^2~20 X-Git-Url: https://git.kernelconcepts.de/?a=commitdiff_plain;h=51c38f9bce274a1e8a90aa457fb433be738f7458;p=karo-tx-linux.git Input: initialize serio and gameport at subsystem level Serio and gameport cores do not depend on other drivers and are used by code living outside of drivers/input/{gameport|serio}. Registering them at subsystem level guarantees that they are fully initialized before anyone tries to use them. Signed-off-by: Dmitry Torokhov --- diff --git a/drivers/Makefile b/drivers/Makefile index 5c69b86db624..6495411337d8 100644 --- a/drivers/Makefile +++ b/drivers/Makefile @@ -25,9 +25,6 @@ obj-$(CONFIG_CONNECTOR) += connector/ obj-$(CONFIG_FB_I810) += video/i810/ obj-$(CONFIG_FB_INTEL) += video/intelfb/ -# we also need input/serio early so serio bus is initialized by the time -# serial drivers start registering their serio ports -obj-$(CONFIG_SERIO) += input/serio/ obj-y += serial/ obj-$(CONFIG_PARPORT) += parport/ obj-y += base/ block/ misc/ mfd/ net/ media/ @@ -53,6 +50,7 @@ obj-$(CONFIG_TC) += tc/ obj-$(CONFIG_USB) += usb/ obj-$(CONFIG_PCI) += usb/ obj-$(CONFIG_USB_GADGET) += usb/gadget/ +obj-$(CONFIG_SERIO) += input/serio/ obj-$(CONFIG_GAMEPORT) += input/gameport/ obj-$(CONFIG_INPUT) += input/ obj-$(CONFIG_I2O) += message/ diff --git a/drivers/input/gameport/gameport.c b/drivers/input/gameport/gameport.c index 9444702630c4..bcfd700829a1 100644 --- a/drivers/input/gameport/gameport.c +++ b/drivers/input/gameport/gameport.c @@ -797,5 +797,5 @@ static void __exit gameport_exit(void) kthread_stop(gameport_task); } -module_init(gameport_init); +subsys_initcall(gameport_init); module_exit(gameport_exit); diff --git a/drivers/input/serio/serio.c b/drivers/input/serio/serio.c index 79e5e77ce03e..966600779b70 100644 --- a/drivers/input/serio/serio.c +++ b/drivers/input/serio/serio.c @@ -924,5 +924,5 @@ static void __exit serio_exit(void) kthread_stop(serio_task); } -module_init(serio_init); +subsys_initcall(serio_init); module_exit(serio_exit);