X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sound%2Fisa%2Fcmi8330.c;h=60a6f4f832cfbec911f5b8ebdc0c7fb620760ac2;hb=8924cb29b44d7e7bc69a58f6d196470a5bcd9385;hp=ea213f5dc8e86b2d2324fa09e12b01c8d2b7d73c;hpb=86090fcac5e27b630656fe3d963a6b80e26dac44;p=linux-2.6.git diff --git a/sound/isa/cmi8330.c b/sound/isa/cmi8330.c index ea213f5dc..60a6f4f83 100644 --- a/sound/isa/cmi8330.c +++ b/sound/isa/cmi8330.c @@ -47,10 +47,10 @@ #include #include #include +#include #include #include #include -#define SNDRV_GET_ID #include /* @@ -79,42 +79,43 @@ static int sbdma16[SNDRV_CARDS] = SNDRV_DEFAULT_DMA; static long wssport[SNDRV_CARDS] = SNDRV_DEFAULT_PORT; static int wssirq[SNDRV_CARDS] = SNDRV_DEFAULT_IRQ; static int wssdma[SNDRV_CARDS] = SNDRV_DEFAULT_DMA; +static int boot_devs; -MODULE_PARM(index, "1-" __MODULE_STRING(SNDRV_CARDS) "i"); +module_param_array(index, int, boot_devs, 0444); MODULE_PARM_DESC(index, "Index value for CMI8330 soundcard."); MODULE_PARM_SYNTAX(index, SNDRV_INDEX_DESC); -MODULE_PARM(id, "1-" __MODULE_STRING(SNDRV_CARDS) "s"); +module_param_array(id, charp, boot_devs, 0444); MODULE_PARM_DESC(id, "ID string for CMI8330 soundcard."); MODULE_PARM_SYNTAX(id, SNDRV_ID_DESC); -MODULE_PARM(enable, "1-" __MODULE_STRING(SNDRV_CARDS) "i"); +module_param_array(enable, bool, boot_devs, 0444); MODULE_PARM_DESC(enable, "Enable CMI8330 soundcard."); MODULE_PARM_SYNTAX(enable, SNDRV_ENABLE_DESC); #ifdef CONFIG_PNP -MODULE_PARM(isapnp, "1-" __MODULE_STRING(SNDRV_CARDS) "i"); +module_param_array(isapnp, bool, boot_devs, 0444); MODULE_PARM_DESC(isapnp, "PnP detection for specified soundcard."); MODULE_PARM_SYNTAX(isapnp, SNDRV_ISAPNP_DESC); #endif -MODULE_PARM(sbport, "1-" __MODULE_STRING(SNDRV_CARDS) "l"); +module_param_array(sbport, long, boot_devs, 0444); MODULE_PARM_DESC(sbport, "Port # for CMI8330 SB driver."); MODULE_PARM_SYNTAX(sbport, SNDRV_ENABLED ",allows:{{0x220,0x280,0x20}},prefers:{0x220},base:16,dialog:list"); -MODULE_PARM(sbirq, "1-" __MODULE_STRING(SNDRV_CARDS) "i"); +module_param_array(sbirq, int, boot_devs, 0444); MODULE_PARM_DESC(sbirq, "IRQ # for CMI8330 SB driver."); MODULE_PARM_SYNTAX(sbirq, SNDRV_ENABLED ",allows:{{5},{7},{9},{10},{11},{12}},prefers:{5},dialog:list"); -MODULE_PARM(sbdma8, "1-" __MODULE_STRING(SNDRV_CARDS) "i"); +module_param_array(sbdma8, int, boot_devs, 0444); MODULE_PARM_DESC(sbdma8, "DMA8 for CMI8330 SB driver."); MODULE_PARM_SYNTAX(sbdma8, SNDRV_DMA8_DESC ",prefers:{1}"); -MODULE_PARM(sbdma16, "1-" __MODULE_STRING(SNDRV_CARDS) "i"); +module_param_array(sbdma16, int, boot_devs, 0444); MODULE_PARM_DESC(sbdma16, "DMA16 for CMI8330 SB driver."); MODULE_PARM_SYNTAX(sbdma16, SNDRV_ENABLED ",allows:{{5},{7}},prefers:{5},dialog:list"); -MODULE_PARM(wssport, "1-" __MODULE_STRING(SNDRV_CARDS) "l"); +module_param_array(wssport, long, boot_devs, 0444); MODULE_PARM_DESC(wssport, "Port # for CMI8330 WSS driver."); MODULE_PARM_SYNTAX(wssport, SNDRV_ENABLED ",allows:{{0x530},{0xe80,0xf40,0xc0}},prefers:{0x530},base:16,dialog:list"); -MODULE_PARM(wssirq, "1-" __MODULE_STRING(SNDRV_CARDS) "i"); +module_param_array(wssirq, int, boot_devs, 0444); MODULE_PARM_DESC(wssirq, "IRQ # for CMI8330 WSS driver."); MODULE_PARM_SYNTAX(wssirq, SNDRV_ENABLED ",allows:{{5},{7},{9},{10},{11},{12}},prefers:{11},dialog:list"); -MODULE_PARM(wssdma, "1-" __MODULE_STRING(SNDRV_CARDS) "i"); +module_param_array(wssdma, int, boot_devs, 0444); MODULE_PARM_DESC(wssdma, "DMA for CMI8330 WSS driver."); MODULE_PARM_SYNTAX(wssdma, SNDRV_DMA8_DESC ",prefers:{0}"); @@ -643,41 +644,3 @@ static void __exit alsa_card_cmi8330_exit(void) module_init(alsa_card_cmi8330_init) module_exit(alsa_card_cmi8330_exit) - -#ifndef MODULE - -/* format is: snd-cmi8330=enable,index,id,isapnp, - sbport,sbirq, - sbdma8,sbdma16, - wssport,wssirq, - wssdma */ - -static int __init alsa_card_cmi8330_setup(char *str) -{ - static unsigned __initdata nr_dev = 0; - int __attribute__ ((__unused__)) pnp = INT_MAX; - - if (nr_dev >= SNDRV_CARDS) - return 0; - (void)(get_option(&str,&enable[nr_dev]) == 2 && - get_option(&str,&index[nr_dev]) == 2 && - get_id(&str,&id[nr_dev]) == 2 && - get_option(&str,&pnp) == 2 && - get_option_long(&str,&sbport[nr_dev]) == 2 && - get_option(&str,&sbirq[nr_dev]) == 2 && - get_option(&str,&sbdma8[nr_dev]) == 2 && - get_option(&str,&sbdma16[nr_dev]) == 2 && - get_option_long(&str,&wssport[nr_dev]) == 2 && - get_option(&str,&wssirq[nr_dev]) == 2 && - get_option(&str,&wssdma[nr_dev]) == 2); -#ifdef CONFIG_PNP - if (pnp != INT_MAX) - isapnp[nr_dev] = pnp; -#endif - nr_dev++; - return 1; -} - -__setup("snd-cmi8330=", alsa_card_cmi8330_setup); - -#endif /* ifndef MODULE */