aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/cs5535audio/cs5535audio.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/pci/cs5535audio/cs5535audio.c')
-rw-r--r--sound/pci/cs5535audio/cs5535audio.c21
1 files changed, 12 insertions, 9 deletions
diff --git a/sound/pci/cs5535audio/cs5535audio.c b/sound/pci/cs5535audio/cs5535audio.c
index 8f46190f24ad..f61c4fa4ed62 100644
--- a/sound/pci/cs5535audio/cs5535audio.c
+++ b/sound/pci/cs5535audio/cs5535audio.c
@@ -56,17 +56,16 @@ static struct ac97_quirk ac97_quirks[] __devinitdata = {
56 {} 56 {}
57}; 57};
58 58
59static int index = SNDRV_DEFAULT_IDX1; 59static int index[SNDRV_CARDS] = SNDRV_DEFAULT_IDX;
60static char *id = SNDRV_DEFAULT_STR1; 60static char *id[SNDRV_CARDS] = SNDRV_DEFAULT_STR;
61/* for backward compatibility */ 61static int enable[SNDRV_CARDS] = SNDRV_DEFAULT_ENABLE_PNP;
62static int enable;
63 62
64module_param(index, int, 0444); 63module_param_array(index, int, NULL, 0444);
65MODULE_PARM_DESC(index, "Index value for " DRIVER_NAME); 64MODULE_PARM_DESC(index, "Index value for " DRIVER_NAME);
66module_param(id, charp, 0444); 65module_param_array(id, charp, NULL, 0444);
67MODULE_PARM_DESC(id, "ID string for " DRIVER_NAME); 66MODULE_PARM_DESC(id, "ID string for " DRIVER_NAME);
68module_param(enable, bool, 0444); 67module_param_array(enable, bool, NULL, 0444);
69MODULE_PARM_DESC(enable, "Enable for " DRIVER_NAME); 68MODULE_PARM_DESC(enable, "Enable " DRIVER_NAME);
70 69
71static struct pci_device_id snd_cs5535audio_ids[] __devinitdata = { 70static struct pci_device_id snd_cs5535audio_ids[] __devinitdata = {
72 { PCI_DEVICE(PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_CS5535_AUDIO) }, 71 { PCI_DEVICE(PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_CS5535_AUDIO) },
@@ -358,8 +357,12 @@ static int __devinit snd_cs5535audio_probe(struct pci_dev *pci,
358 357
359 if (dev >= SNDRV_CARDS) 358 if (dev >= SNDRV_CARDS)
360 return -ENODEV; 359 return -ENODEV;
360 if (!enable[dev]) {
361 dev++;
362 return -ENOENT;
363 }
361 364
362 card = snd_card_new(index, id, THIS_MODULE, 0); 365 card = snd_card_new(index[dev], id[dev], THIS_MODULE, 0);
363 if (card == NULL) 366 if (card == NULL)
364 return -ENOMEM; 367 return -ENOMEM;
365 368