diff options
author | Bjorn Helgaas <bjorn.helgaas@hp.com> | 2006-03-27 04:17:15 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-27 11:44:54 -0500 |
commit | 312fef308cb15e793d8902f1dbd318d01268d36e (patch) | |
tree | 0867a21d522155b9aed0a81ad584de7628fdbe3d | |
parent | ebdb71ea7b384ff3f32dd038dba0aad58580e832 (diff) |
[PATCH] PNP: adjust pnp_register_card_driver() signature: sb16
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>
Cc: Adam Belay <ambx1@neo.rr.com>
Cc: Jaroslav Kysela <perex@suse.cz>
Acked-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | sound/isa/sb/sb16.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/sound/isa/sb/sb16.c b/sound/isa/sb/sb16.c index 5737ab76160c..21ea65925a9e 100644 --- a/sound/isa/sb/sb16.c +++ b/sound/isa/sb/sb16.c | |||
@@ -369,7 +369,7 @@ static struct snd_card *snd_sb16_card_new(int dev) | |||
369 | return card; | 369 | return card; |
370 | } | 370 | } |
371 | 371 | ||
372 | static int __init snd_sb16_probe(struct snd_card *card, int dev) | 372 | static int __devinit snd_sb16_probe(struct snd_card *card, int dev) |
373 | { | 373 | { |
374 | int xirq, xdma8, xdma16; | 374 | int xirq, xdma8, xdma16; |
375 | struct snd_sb *chip; | 375 | struct snd_sb *chip; |
@@ -518,7 +518,7 @@ static int snd_sb16_resume(struct snd_card *card) | |||
518 | } | 518 | } |
519 | #endif | 519 | #endif |
520 | 520 | ||
521 | static int __init snd_sb16_nonpnp_probe1(int dev, struct platform_device *devptr) | 521 | static int __devinit snd_sb16_nonpnp_probe1(int dev, struct platform_device *devptr) |
522 | { | 522 | { |
523 | struct snd_card_sb16 *acard; | 523 | struct snd_card_sb16 *acard; |
524 | struct snd_card *card; | 524 | struct snd_card *card; |
@@ -548,7 +548,7 @@ static int __init snd_sb16_nonpnp_probe1(int dev, struct platform_device *devptr | |||
548 | } | 548 | } |
549 | 549 | ||
550 | 550 | ||
551 | static int __init snd_sb16_nonpnp_probe(struct platform_device *pdev) | 551 | static int __devinit snd_sb16_nonpnp_probe(struct platform_device *pdev) |
552 | { | 552 | { |
553 | int dev = pdev->id; | 553 | int dev = pdev->id; |
554 | int err; | 554 | int err; |
@@ -629,6 +629,7 @@ static struct platform_driver snd_sb16_nonpnp_driver = { | |||
629 | 629 | ||
630 | 630 | ||
631 | #ifdef CONFIG_PNP | 631 | #ifdef CONFIG_PNP |
632 | static unsigned int __devinitdata sb16_pnp_devices; | ||
632 | 633 | ||
633 | static int __devinit snd_sb16_pnp_detect(struct pnp_card_link *pcard, | 634 | static int __devinit snd_sb16_pnp_detect(struct pnp_card_link *pcard, |
634 | const struct pnp_card_device_id *pid) | 635 | const struct pnp_card_device_id *pid) |
@@ -651,6 +652,7 @@ static int __devinit snd_sb16_pnp_detect(struct pnp_card_link *pcard, | |||
651 | } | 652 | } |
652 | pnp_set_card_drvdata(pcard, card); | 653 | pnp_set_card_drvdata(pcard, card); |
653 | dev++; | 654 | dev++; |
655 | sb16_pnp_devices++; | ||
654 | return 0; | 656 | return 0; |
655 | } | 657 | } |
656 | 658 | ||
@@ -727,10 +729,10 @@ static int __init alsa_card_sb16_init(void) | |||
727 | } | 729 | } |
728 | #ifdef CONFIG_PNP | 730 | #ifdef CONFIG_PNP |
729 | /* PnP cards at last */ | 731 | /* PnP cards at last */ |
730 | i = pnp_register_card_driver(&sb16_pnpc_driver); | 732 | err = pnp_register_card_driver(&sb16_pnpc_driver); |
731 | if (i >= 0) { | 733 | if (!err) { |
732 | pnp_registered = 1; | 734 | pnp_registered = 1; |
733 | cards += i; | 735 | cards += sb16_pnp_devices; |
734 | } | 736 | } |
735 | #endif | 737 | #endif |
736 | 738 | ||