Lines Matching +full:audio +full:- +full:enable
1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * cs5530.c - Initialisation code for Cyrix/NatSemi VSA1 softaudio
11 * simultaneously play back audio at 16bit 44100kHz, the device actually plays
13 * always play/capture in 16/44100, we can let alsa-lib convert the samples and
14 * that way we can hack up some full duplex audio.
20 * to control the AC97 audio engine directly and requires a different driver.
39 MODULE_DESCRIPTION("CS5530 Audio");
44 static bool enable[SNDRV_CARDS] = SNDRV_DEFAULT_ENABLE_PNP; variable
47 MODULE_PARM_DESC(index, "Index value for CS5530 Audio driver.");
49 MODULE_PARM_DESC(id, "ID string for CS5530 Audio driver.");
50 module_param_array(enable, bool, NULL, 0444);
51 MODULE_PARM_DESC(enable, "Enable CS5530 Audio driver.");
80 struct snd_cs5530 *chip = card->private_data; in snd_cs5530_create()
91 chip->card = card; in snd_cs5530_create()
92 chip->pci = pci; in snd_cs5530_create()
97 chip->pci_base = pci_resource_start(pci, 0); in snd_cs5530_create()
103 2 sb enable in snd_cs5530_create()
104 3 adlib enable in snd_cs5530_create()
105 5 MPU enable 0x330 in snd_cs5530_create()
106 6 MPU enable 0x300 in snd_cs5530_create()
113 dev_info(card->dev, "XpressAudio at 0x%lx\n", sb_base); in snd_cs5530_create()
115 dev_err(card->dev, "Could not find XpressAudio!\n"); in snd_cs5530_create()
116 return -ENODEV; in snd_cs5530_create()
120 dev_info(card->dev, "MPU at 0x300\n"); in snd_cs5530_create()
122 dev_info(card->dev, "MPU at 0x330\n"); in snd_cs5530_create()
134 dev_err(card->dev, "No 16bit DMA enabled\n"); in snd_cs5530_create()
135 return -ENODEV; in snd_cs5530_create()
145 dev_err(card->dev, "No 8bit DMA enabled\n"); in snd_cs5530_create()
146 return -ENODEV; in snd_cs5530_create()
158 dev_err(card->dev, "SoundBlaster IRQ not set\n"); in snd_cs5530_create()
159 return -ENODEV; in snd_cs5530_create()
162 dev_info(card->dev, "IRQ: %d DMA8: %d DMA16: %d\n", irq, dma8, dma16); in snd_cs5530_create()
165 dma16, SB_HW_CS5530, &chip->sb); in snd_cs5530_create()
167 dev_err(card->dev, "Could not create SoundBlaster\n"); in snd_cs5530_create()
171 err = snd_sb16dsp_pcm(chip->sb, 0); in snd_cs5530_create()
173 dev_err(card->dev, "Could not create PCM\n"); in snd_cs5530_create()
177 err = snd_sbmixer_new(chip->sb); in snd_cs5530_create()
179 dev_err(card->dev, "Could not create Mixer\n"); in snd_cs5530_create()
195 return -ENODEV; in snd_cs5530_probe()
196 if (!enable[dev]) { in snd_cs5530_probe()
198 return -ENOENT; in snd_cs5530_probe()
201 err = snd_devm_card_new(&pci->dev, index[dev], id[dev], THIS_MODULE, in snd_cs5530_probe()
205 chip = card->private_data; in snd_cs5530_probe()
211 strcpy(card->driver, "CS5530"); in snd_cs5530_probe()
212 strcpy(card->shortname, "CS5530 Audio"); in snd_cs5530_probe()
213 sprintf(card->longname, "%s at 0x%lx", card->shortname, chip->pci_base); in snd_cs5530_probe()