Input: Probe PnP gameports first, ISA after that.
Vojtech Pavlik [Sun, 29 May 2005 07:25:01 +0000 (02:25 -0500)]
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

drivers/input/gameport/ns558.c

index 7c5c631..1ab5f2d 100644 (file)
@@ -258,18 +258,18 @@ static int __init ns558_init(void)
 {
        int i = 0;
 
+       if (pnp_register_driver(&ns558_pnp_driver) >= 0)
+               pnp_registered = 1;
+
 /*
- * Probe ISA ports first so that PnP gets to choose free port addresses
- * not occupied by the ISA ports.
+ * Probe ISA ports after PnP, so that PnP ports that are already
+ * enabled get detected as PnP. This may be suboptimal in multi-device
+ * configurations, but saves hassle with simple setups.
  */
 
        while (ns558_isa_portlist[i])
                ns558_isa_probe(ns558_isa_portlist[i++]);
 
-       if (pnp_register_driver(&ns558_pnp_driver) >= 0)
-               pnp_registered = 1;
-
-
        return (list_empty(&ns558_list) && !pnp_registered) ? -ENODEV : 0;
 }