Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'fix/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

* 'fix/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
ASoC: Wait for WM8993 FLL to stabilise
ASoC: core - Free platform DAPM context at platform removal.
ASoC: dapm - Fix check for codec context in dapm_power_widgets().
ASoC: sgtl5000: update author email address
ASoC: Fix DMA channel leak in imx-pcm-dma-mx2 driver.

+19 -7
+1 -1
sound/soc/codecs/sgtl5000.c
··· 1457 1457 module_exit(sgtl5000_exit); 1458 1458 1459 1459 MODULE_DESCRIPTION("Freescale SGTL5000 ALSA SoC Codec Driver"); 1460 - MODULE_AUTHOR("Zeng Zhaoming <zhaoming.zeng@freescale.com>"); 1460 + MODULE_AUTHOR("Zeng Zhaoming <zengzm.kernel@gmail.com>"); 1461 1461 MODULE_LICENSE("GPL");
+6
sound/soc/codecs/wm8993.c
··· 444 444 /* Enable the FLL */ 445 445 snd_soc_write(codec, WM8993_FLL_CONTROL_1, reg1 | WM8993_FLL_ENA); 446 446 447 + /* Both overestimates */ 448 + if (Fref < 1000000) 449 + msleep(3); 450 + else 451 + msleep(1); 452 + 447 453 dev_dbg(codec->dev, "FLL enabled at %dHz->%dHz\n", Fref, Fout); 448 454 449 455 wm8993->fll_fref = Fref;
+7 -5
sound/soc/imx/imx-pcm-dma-mx2.c
··· 88 88 iprtd->dma_data.dma_request = dma_params->dma; 89 89 90 90 /* Try to grab a DMA channel */ 91 - dma_cap_zero(mask); 92 - dma_cap_set(DMA_SLAVE, mask); 93 - iprtd->dma_chan = dma_request_channel(mask, filter, iprtd); 94 - if (!iprtd->dma_chan) 95 - return -EINVAL; 91 + if (!iprtd->dma_chan) { 92 + dma_cap_zero(mask); 93 + dma_cap_set(DMA_SLAVE, mask); 94 + iprtd->dma_chan = dma_request_channel(mask, filter, iprtd); 95 + if (!iprtd->dma_chan) 96 + return -EINVAL; 97 + } 96 98 97 99 switch (params_format(params)) { 98 100 case SNDRV_PCM_FORMAT_S16_LE:
+4
sound/soc/soc-core.c
··· 907 907 if (err < 0) 908 908 printk(KERN_ERR "asoc: failed to remove %s\n", platform->name); 909 909 } 910 + 911 + /* Make sure all DAPM widgets are freed */ 912 + snd_soc_dapm_free(&platform->dapm); 913 + 910 914 platform->probed = 0; 911 915 list_del(&platform->card_list); 912 916 module_put(platform->dev->driver->owner);
+1 -1
sound/soc/soc-dapm.c
··· 1426 1426 dapm->target_bias_level = SND_SOC_BIAS_ON; 1427 1427 break; 1428 1428 case SND_SOC_DAPM_STREAM_STOP: 1429 - if (dapm->codec->active) 1429 + if (dapm->codec && dapm->codec->active) 1430 1430 dapm->target_bias_level = SND_SOC_BIAS_ON; 1431 1431 else 1432 1432 dapm->target_bias_level = SND_SOC_BIAS_STANDBY;