From d4b341c1d2325a1be2b5c89b43093e1db8fabf01 Mon Sep 17 00:00:00 2001 From: Bjorn Helgaas Date: Tue, 14 Mar 2006 00:12:08 -0500 Subject: [PATCH] --- yaml --- r: 25066 b: refs/heads/master c: dd55563f635751327eb06ae569d4761a0220f2e0 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/input/gameport/ns558.c | 13 ++++++------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/[refs] b/[refs] index 92887d3f9a30..59efebf8bfd9 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e5c6c8e457d16c7cbc12f849ad18d4d508950de2 +refs/heads/master: dd55563f635751327eb06ae569d4761a0220f2e0 diff --git a/trunk/drivers/input/gameport/ns558.c b/trunk/drivers/input/gameport/ns558.c index d2e55dc956ba..3e2d28f263e9 100644 --- a/trunk/drivers/input/gameport/ns558.c +++ b/trunk/drivers/input/gameport/ns558.c @@ -252,14 +252,14 @@ static struct pnp_driver ns558_pnp_driver; #endif -static int pnp_registered = 0; - static int __init ns558_init(void) { int i = 0; + int error; - if (pnp_register_driver(&ns558_pnp_driver) >= 0) - pnp_registered = 1; + error = pnp_register_driver(&ns558_pnp_driver); + if (error && error != -ENODEV) /* should be ENOSYS really */ + return error; /* * Probe ISA ports after PnP, so that PnP ports that are already @@ -270,7 +270,7 @@ static int __init ns558_init(void) while (ns558_isa_portlist[i]) ns558_isa_probe(ns558_isa_portlist[i++]); - return (list_empty(&ns558_list) && !pnp_registered) ? -ENODEV : 0; + return list_empty(&ns558_list) && error ? -ENODEV : 0; } static void __exit ns558_exit(void) @@ -283,8 +283,7 @@ static void __exit ns558_exit(void) kfree(ns558); } - if (pnp_registered) - pnp_unregister_driver(&ns558_pnp_driver); + pnp_unregister_driver(&ns558_pnp_driver); } module_init(ns558_init);