Messages in this thread Patch in this message | | | From | Bjorn Helgaas <> | Subject | [PATCH 7/12] PNP: adjust pnp_register_card_driver() signature | Date | Wed, 22 Mar 2006 15:12:47 -0700 |
| |
Remove the assumption that pnp_register_card_driver() returns the number of devices claimed. And fix some __init/__devinit issues.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Index: work-mm6/sound/isa/sb/es968.c =================================================================== --- work-mm6.orig/sound/isa/sb/es968.c 2006-03-22 11:24:41.000000000 -0700 +++ work-mm6/sound/isa/sb/es968.c 2006-03-22 12:09:31.000000000 -0700 @@ -124,7 +124,7 @@ return 0; } -static int __init snd_card_es968_probe(int dev, +static int __devinit snd_card_es968_probe(int dev, struct pnp_card_link *pcard, const struct pnp_card_device_id *pid) { @@ -182,6 +182,8 @@ return 0; } +static unsigned int __devinitdata es968_devices; + static int __devinit snd_es968_pnp_detect(struct pnp_card_link *card, const struct pnp_card_device_id *id) { @@ -195,6 +197,7 @@ if (res < 0) return res; dev++; + es968_devices++; return 0; } return -ENODEV; @@ -246,8 +249,11 @@ static int __init alsa_card_es968_init(void) { - int cards = pnp_register_card_driver(&es968_pnpc_driver); - if (cards <= 0) { + int err = pnp_register_card_driver(&es968_pnpc_driver); + if (err) + return err; + + if (!es968_devices) { pnp_unregister_card_driver(&es968_pnpc_driver); #ifdef MODULE snd_printk(KERN_ERR "no ES968 based soundcards found\n"); - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |