[PATCH] EISA: tidy-up driver_register() return value

Remove the assumption that driver_register() returns the number of devices
bound to the driver.  In fact, it returns zero for success or a negative
error value.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Acked-by: Jeff Garzik <jgarzik@pobox.com>
Acked-by: Marc Zyngier <maz@misterjones.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Bjorn Helgaas 2006-03-25 03:07:19 -08:00 committed by Linus Torvalds
parent e51c01b084
commit c2f6fabb2e
3 changed files with 20 additions and 21 deletions

View File

@ -135,13 +135,8 @@ struct bus_type eisa_bus_type = {
int eisa_driver_register (struct eisa_driver *edrv)
{
int r;
edrv->driver.bus = &eisa_bus_type;
if ((r = driver_register (&edrv->driver)) < 0)
return r;
return 0;
return driver_register (&edrv->driver);
}
void eisa_driver_unregister (struct eisa_driver *edrv)

View File

@ -1096,14 +1096,18 @@ static int __init vortex_eisa_init (void)
int orig_cards_found = vortex_cards_found;
#ifdef CONFIG_EISA
if (eisa_driver_register (&vortex_eisa_driver) >= 0) {
/* Because of the way EISA bus is probed, we cannot assume
* any device have been found when we exit from
* eisa_driver_register (the bus root driver may not be
* initialized yet). So we blindly assume something was
* found, and let the sysfs magic happend... */
eisa_found = 1;
int err;
err = eisa_driver_register (&vortex_eisa_driver);
if (!err) {
/*
* Because of the way EISA bus is probed, we cannot assume
* any device have been found when we exit from
* eisa_driver_register (the bus root driver may not be
* initialized yet). So we blindly assume something was
* found, and let the sysfs magic happend...
*/
eisa_found = 1;
}
#endif

View File

@ -1551,7 +1551,7 @@ MODULE_PARM_DESC(nicmode, "Digi RightSwitch operating mode (1: switch, 2: multi-
static int __init dgrs_init_module (void)
{
int i;
int cardcount = 0;
int err;
/*
* Command line variable overrides
@ -1593,13 +1593,13 @@ static int __init dgrs_init_module (void)
* Find and configure all the cards
*/
#ifdef CONFIG_EISA
cardcount = eisa_driver_register(&dgrs_eisa_driver);
if (cardcount < 0)
return cardcount;
err = eisa_driver_register(&dgrs_eisa_driver);
if (err)
return err;
#endif
cardcount = pci_register_driver(&dgrs_pci_driver);
if (cardcount)
return cardcount;
err = pci_register_driver(&dgrs_pci_driver);
if (err)
return err;
return 0;
}