return 0;
}
-static int __devinit snd_card_als100_probe(int dev,
+static int __init snd_card_als100_probe(int dev,
struct pnp_card_link *pcard,
const struct pnp_card_device_id *pid)
{
if (mpu_port[dev] > 0 && mpu_port[dev] != SNDRV_AUTO_PORT) {
if (snd_mpu401_uart_new(card, 0, MPU401_HW_ALS100,
mpu_port[dev], 0,
- mpu_irq[dev], IRQF_DISABLED,
+ mpu_irq[dev], SA_INTERRUPT,
NULL) < 0)
snd_printk(KERN_ERR PFX "no MPU-401 device at 0x%lx\n", mpu_port[dev]);
}
return 0;
}
-static unsigned int __devinitdata als100_devices;
-
static int __devinit snd_als100_pnp_detect(struct pnp_card_link *card,
const struct pnp_card_device_id *id)
{
if (res < 0)
return res;
dev++;
- als100_devices++;
return 0;
}
return -ENODEV;
static int __init alsa_card_als100_init(void)
{
- int err;
-
- err = pnp_register_card_driver(&als100_pnpc_driver);
- if (err)
- return err;
+ int cards;
- if (!als100_devices) {
+ cards = pnp_register_card_driver(&als100_pnpc_driver);
+ if (cards <= 0) {
pnp_unregister_card_driver(&als100_pnpc_driver);
#ifdef MODULE
snd_printk(KERN_ERR "no ALS100 based soundcards found\n");