]> err.no Git - linux-2.6/commitdiff
Input: initialize serio and gameport at subsystem level
authorDmitry Torokhov <dtor_core@ameritech.net>
Sun, 19 Feb 2006 05:22:51 +0000 (00:22 -0500)
committerDmitry Torokhov <dtor_core@ameritech.net>
Sun, 19 Feb 2006 05:22:51 +0000 (00:22 -0500)
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 <dtor@mail.ru>
drivers/Makefile
drivers/input/gameport/gameport.c
drivers/input/serio/serio.c

index 5c69b86db6247a3f776ce8bde0ede999fdc274d6..6495411337d8dd1974da1784c96a279b4f9c0f23 100644 (file)
@@ -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/
index 9444702630c4abb8ffe781e273b255f4d44499f7..bcfd700829a1406173ed718f68b251b1191fca03 100644 (file)
@@ -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);
index 79e5e77ce03eef43fee69c5197b62559a92a3b34..966600779b7009f6d97ae06f87bc1981092f29fc 100644 (file)
@@ -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);