Commit 312fef30 authored by Bjorn Helgaas's avatar Bjorn Helgaas Committed by Linus Torvalds

[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: default avatarBjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Adam Belay <ambx1@neo.rr.com>
Cc: Jaroslav Kysela <perex@suse.cz>
Acked-by: default avatarTakashi Iwai <tiwai@suse.de>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent ebdb71ea
...@@ -369,7 +369,7 @@ static struct snd_card *snd_sb16_card_new(int dev) ...@@ -369,7 +369,7 @@ static struct snd_card *snd_sb16_card_new(int dev)
return card; return card;
} }
static int __init snd_sb16_probe(struct snd_card *card, int dev) static int __devinit snd_sb16_probe(struct snd_card *card, int dev)
{ {
int xirq, xdma8, xdma16; int xirq, xdma8, xdma16;
struct snd_sb *chip; struct snd_sb *chip;
...@@ -518,7 +518,7 @@ static int snd_sb16_resume(struct snd_card *card) ...@@ -518,7 +518,7 @@ static int snd_sb16_resume(struct snd_card *card)
} }
#endif #endif
static int __init snd_sb16_nonpnp_probe1(int dev, struct platform_device *devptr) static int __devinit snd_sb16_nonpnp_probe1(int dev, struct platform_device *devptr)
{ {
struct snd_card_sb16 *acard; struct snd_card_sb16 *acard;
struct snd_card *card; struct snd_card *card;
...@@ -548,7 +548,7 @@ static int __init snd_sb16_nonpnp_probe1(int dev, struct platform_device *devptr ...@@ -548,7 +548,7 @@ static int __init snd_sb16_nonpnp_probe1(int dev, struct platform_device *devptr
} }
static int __init snd_sb16_nonpnp_probe(struct platform_device *pdev) static int __devinit snd_sb16_nonpnp_probe(struct platform_device *pdev)
{ {
int dev = pdev->id; int dev = pdev->id;
int err; int err;
...@@ -629,6 +629,7 @@ static struct platform_driver snd_sb16_nonpnp_driver = { ...@@ -629,6 +629,7 @@ static struct platform_driver snd_sb16_nonpnp_driver = {
#ifdef CONFIG_PNP #ifdef CONFIG_PNP
static unsigned int __devinitdata sb16_pnp_devices;
static int __devinit snd_sb16_pnp_detect(struct pnp_card_link *pcard, static int __devinit snd_sb16_pnp_detect(struct pnp_card_link *pcard,
const struct pnp_card_device_id *pid) const struct pnp_card_device_id *pid)
...@@ -651,6 +652,7 @@ static int __devinit snd_sb16_pnp_detect(struct pnp_card_link *pcard, ...@@ -651,6 +652,7 @@ static int __devinit snd_sb16_pnp_detect(struct pnp_card_link *pcard,
} }
pnp_set_card_drvdata(pcard, card); pnp_set_card_drvdata(pcard, card);
dev++; dev++;
sb16_pnp_devices++;
return 0; return 0;
} }
...@@ -727,10 +729,10 @@ static int __init alsa_card_sb16_init(void) ...@@ -727,10 +729,10 @@ static int __init alsa_card_sb16_init(void)
} }
#ifdef CONFIG_PNP #ifdef CONFIG_PNP
/* PnP cards at last */ /* PnP cards at last */
i = pnp_register_card_driver(&sb16_pnpc_driver); err = pnp_register_card_driver(&sb16_pnpc_driver);
if (i >= 0) { if (!err) {
pnp_registered = 1; pnp_registered = 1;
cards += i; cards += sb16_pnp_devices;
} }
#endif #endif
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment