diff options
author | Dmitry Torokhov <dtor@insightbb.com> | 2007-05-03 00:52:51 -0400 |
---|---|---|
committer | Dmitry Torokhov <dtor@insightbb.com> | 2007-05-03 00:52:51 -0400 |
commit | 78167236e23bb3c80d2b35b693e578a6e56b1171 (patch) | |
tree | 2287a478c80f5eaa79738d4b541bd5a0ddd42de5 /drivers/input/joystick/gamecon.c | |
parent | dec3eb01c2409ca8276c1152c167add66a37d1ba (diff) | |
download | op-kernel-dev-78167236e23bb3c80d2b35b693e578a6e56b1171.zip op-kernel-dev-78167236e23bb3c80d2b35b693e578a6e56b1171.tar.gz |
Input: drivers/joystick - fix various sparse warnings
Fix various issues pointed by sparse:
- module_param_array_named() takes unsigned int as number
of parameters argument
- shadowing of global variables is not healthy. I think there was
once a bug in db9 caused by it.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers/input/joystick/gamecon.c')
-rw-r--r-- | drivers/input/joystick/gamecon.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/drivers/input/joystick/gamecon.c b/drivers/input/joystick/gamecon.c index c71b58f..1a452e0 100644 --- a/drivers/input/joystick/gamecon.c +++ b/drivers/input/joystick/gamecon.c @@ -48,16 +48,16 @@ MODULE_LICENSE("GPL"); struct gc_config { int args[GC_MAX_DEVICES + 1]; - int nargs; + unsigned int nargs; }; -static struct gc_config gc[GC_MAX_PORTS] __initdata; +static struct gc_config gc_cfg[GC_MAX_PORTS] __initdata; -module_param_array_named(map, gc[0].args, int, &gc[0].nargs, 0); +module_param_array_named(map, gc_cfg[0].args, int, &gc_cfg[0].nargs, 0); MODULE_PARM_DESC(map, "Describes first set of devices (<parport#>,<pad1>,<pad2>,..<pad5>)"); -module_param_array_named(map2, gc[1].args, int, &gc[1].nargs, 0); +module_param_array_named(map2, gc_cfg[1].args, int, &gc_cfg[1].nargs, 0); MODULE_PARM_DESC(map2, "Describes second set of devices"); -module_param_array_named(map3, gc[2].args, int, &gc[2].nargs, 0); +module_param_array_named(map3, gc_cfg[2].args, int, &gc_cfg[2].nargs, 0); MODULE_PARM_DESC(map3, "Describes third set of devices"); /* see also gs_psx_delay parameter in PSX support section */ @@ -810,16 +810,17 @@ static int __init gc_init(void) int err = 0; for (i = 0; i < GC_MAX_PORTS; i++) { - if (gc[i].nargs == 0 || gc[i].args[0] < 0) + if (gc_cfg[i].nargs == 0 || gc_cfg[i].args[0] < 0) continue; - if (gc[i].nargs < 2) { + if (gc_cfg[i].nargs < 2) { printk(KERN_ERR "gamecon.c: at least one device must be specified\n"); err = -EINVAL; break; } - gc_base[i] = gc_probe(gc[i].args[0], gc[i].args + 1, gc[i].nargs - 1); + gc_base[i] = gc_probe(gc_cfg[i].args[0], + gc_cfg[i].args + 1, gc_cfg[i].nargs - 1); if (IS_ERR(gc_base[i])) { err = PTR_ERR(gc_base[i]); break; |