diff options
Diffstat (limited to 'sound/isa/opti9xx/opti92x-ad1848.c')
-rw-r--r-- | sound/isa/opti9xx/opti92x-ad1848.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/sound/isa/opti9xx/opti92x-ad1848.c b/sound/isa/opti9xx/opti92x-ad1848.c index 411a702d85ba..73573cb1db6a 100644 --- a/sound/isa/opti9xx/opti92x-ad1848.c +++ b/sound/isa/opti9xx/opti92x-ad1848.c | |||
@@ -1038,8 +1038,7 @@ static int snd_opti93x_capture_prepare(snd_pcm_substream_t *substream) | |||
1038 | 1038 | ||
1039 | chip->c_dma_size = size; | 1039 | chip->c_dma_size = size; |
1040 | snd_opti93x_out_mask(chip, OPTi93X_IFACE_CONF, | 1040 | snd_opti93x_out_mask(chip, OPTi93X_IFACE_CONF, |
1041 | OPTi93X_CAPTURE_ENABLE | OPTi93X_CAPTURE_PIO, | 1041 | OPTi93X_CAPTURE_ENABLE | OPTi93X_CAPTURE_PIO, 0); |
1042 | (unsigned char)~(OPTi93X_CAPTURE_ENABLE | OPTi93X_CAPTURE_PIO)); | ||
1043 | 1042 | ||
1044 | snd_dma_program(chip->dma2, runtime->dma_addr, size, | 1043 | snd_dma_program(chip->dma2, runtime->dma_addr, size, |
1045 | DMA_MODE_READ | DMA_AUTOINIT); | 1044 | DMA_MODE_READ | DMA_AUTOINIT); |
@@ -1274,7 +1273,7 @@ static int snd_opti93x_create(snd_card_t *card, opti9xx_t *chip, | |||
1274 | opti93x_t *codec; | 1273 | opti93x_t *codec; |
1275 | 1274 | ||
1276 | *rcodec = NULL; | 1275 | *rcodec = NULL; |
1277 | codec = kcalloc(1, sizeof(*codec), GFP_KERNEL); | 1276 | codec = kzalloc(sizeof(*codec), GFP_KERNEL); |
1278 | if (codec == NULL) | 1277 | if (codec == NULL) |
1279 | return -ENOMEM; | 1278 | return -ENOMEM; |
1280 | codec->irq = -1; | 1279 | codec->irq = -1; |
@@ -1895,8 +1894,8 @@ static void snd_card_opti9xx_free(snd_card_t *card) | |||
1895 | } | 1894 | } |
1896 | } | 1895 | } |
1897 | 1896 | ||
1898 | static int __devinit snd_card_opti9xx_probe(struct pnp_card_link *pcard, | 1897 | static int snd_card_opti9xx_probe(struct pnp_card_link *pcard, |
1899 | const struct pnp_card_device_id *pid) | 1898 | const struct pnp_card_device_id *pid) |
1900 | { | 1899 | { |
1901 | static long possible_ports[] = {0x530, 0xe80, 0xf40, 0x604, -1}; | 1900 | static long possible_ports[] = {0x530, 0xe80, 0xf40, 0x604, -1}; |
1902 | static long possible_mpu_ports[] = {0x300, 0x310, 0x320, 0x330, -1}; | 1901 | static long possible_mpu_ports[] = {0x300, 0x310, 0x320, 0x330, -1}; |
@@ -1966,6 +1965,10 @@ static int __devinit snd_card_opti9xx_probe(struct pnp_card_link *pcard, | |||
1966 | snd_card_free(card); | 1965 | snd_card_free(card); |
1967 | return error; | 1966 | return error; |
1968 | } | 1967 | } |
1968 | if ((error = snd_card_set_generic_dev(card)) < 0) { | ||
1969 | snd_card_free(card); | ||
1970 | return error; | ||
1971 | } | ||
1969 | #ifdef CONFIG_PNP | 1972 | #ifdef CONFIG_PNP |
1970 | } | 1973 | } |
1971 | #endif /* CONFIG_PNP */ | 1974 | #endif /* CONFIG_PNP */ |