#include "aureon.h"
#include "vt1720_mobo.h"
#include "pontis.h"
+#include "prodigy192.h"
MODULE_AUTHOR("Jaroslav Kysela <perex@suse.cz>");
AUREON_DEVICE_DESC
VT1720_MOBO_DEVICE_DESC
PONTIS_DEVICE_DESC
+ PRODIGY192_DEVICE_DESC
"{VIA,VT1720},"
"{VIA,VT1724},"
"{ICEnsemble,Generic ICE1724},"
static char *id[SNDRV_CARDS] = SNDRV_DEFAULT_STR; /* ID for this card */
static int enable[SNDRV_CARDS] = SNDRV_DEFAULT_ENABLE_PNP; /* Enable this card */
static char *model[SNDRV_CARDS];
-static int boot_devs;
-module_param_array(index, int, boot_devs, 0444);
+module_param_array(index, int, NULL, 0444);
MODULE_PARM_DESC(index, "Index value for ICE1724 soundcard.");
-module_param_array(id, charp, boot_devs, 0444);
+module_param_array(id, charp, NULL, 0444);
MODULE_PARM_DESC(id, "ID string for ICE1724 soundcard.");
-module_param_array(enable, bool, boot_devs, 0444);
+module_param_array(enable, bool, NULL, 0444);
MODULE_PARM_DESC(enable, "Enable ICE1724 soundcard.");
-module_param_array(model, charp, boot_devs, 0444);
+module_param_array(model, charp, NULL, 0444);
MODULE_PARM_DESC(model, "Use the given board model.");
#ifndef PCI_VENDOR_ID_ICE
static snd_kcontrol_new_t snd_vt1724_mixer_pro_spdif_route __devinitdata = {
.iface = SNDRV_CTL_ELEM_IFACE_MIXER,
- .name = "IEC958 Playback Route",
+ .name = SNDRV_CTL_NAME_IEC958("",PLAYBACK,NONE) "Route",
.info = snd_vt1724_pro_route_info,
.get = snd_vt1724_pro_route_spdif_get,
.put = snd_vt1724_pro_route_spdif_put,
snd_vt1724_aureon_cards,
snd_vt1720_mobo_cards,
snd_vt1720_pontis_cards,
+ snd_vt1724_prodigy192_cards,
NULL,
};
}
pci_release_regions(ice->pci);
snd_ice1712_akm4xxx_free(ice);
+ pci_disable_device(ice->pci);
kfree(ice);
return 0;
}
return err;
ice = kcalloc(1, sizeof(*ice), GFP_KERNEL);
- if (ice == NULL)
+ if (ice == NULL) {
+ pci_disable_device(pci);
return -ENOMEM;
+ }
ice->vt1724 = 1;
spin_lock_init(&ice->reg_lock);
init_MUTEX(&ice->gpio_mutex);
if ((err = pci_request_regions(pci, "ICE1724")) < 0) {
kfree(ice);
+ pci_disable_device(pci);
return err;
}
ice->port = pci_resource_start(pci, 0);