linux-stable/sound/soc
Caleb Crome 4ee437fbf6 ASoC: fsl_ssi: set fifo watermark to more reliable value
The fsl_ssi fifo watermark is by default set to 2 free spaces (i.e.
activate DMA on FIFO when only 2 spaces are left.)  This means the
DMA must service the fifo within 2 audio samples, which is just not
enough time  for many use cases with high data rate.  In many
configurations the audio channel slips (causing l/r swap in stereo
configurations, or channel slipping in multi-channel configurations).

This patch gives more breathing room and allows the SSI to operate
reliably by changing the fifio refill watermark to 8.

There is no change in behavior for older chips (with an 8-deep fifo).
Only the newer chips with a 15-deep fifo get the new behavior. I
suspect a new fifo depth setting could be optimized on the older
chips too, but I have not tested.

Signed-off-by: Caleb Crome <caleb@crome.org>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2017-01-04 18:27:17 +00:00
..
adi
amd ASoC: constify snd_pcm_ops structures 2016-09-12 20:04:09 +01:00
atmel ASoC: atmel: tse850: add ASoC driver for the Axentia TSE-850 2016-11-16 11:12:42 +00:00
au1x
bcm ASoC: bcm: add depends on HAS_DMA 2016-11-02 14:57:05 -06:00
blackfin
cirrus
codecs Merge remote-tracking branches 'asoc/topic/wm9712', 'asoc/topic/wm9713' and 'asoc/topic/zte' into asoc-next 2016-12-12 15:53:32 +00:00
davinci ASoC: davinci-mcasp: off-by-one in davinci_mcasp_hw_rule_format() 2016-09-01 20:56:30 +01:00
dwc
fsl ASoC: fsl_ssi: set fifo watermark to more reliable value 2017-01-04 18:27:17 +00:00
generic Merge remote-tracking branches 'asoc/topic/rt5665', 'asoc/topic/rt5670', 'asoc/topic/rt5677', 'asoc/topic/samsung' and 'asoc/topic/simple' into asoc-next 2016-12-12 15:53:18 +00:00
img
intel Merge remote-tracking branches 'asoc/topic/compress', 'asoc/topic/const' and 'asoc/topic/cs35l34' into asoc-next 2016-12-12 15:52:51 +00:00
jz4740
kirkwood ASoC: constify snd_soc_ops structures 2016-10-24 18:34:55 +01:00
mediatek ASoC: mediatek: mark symbols static where possible 2016-08-11 15:02:28 +01:00
mxs Merge remote-tracking branches 'asoc/topic/dpcm', 'asoc/topic/es8328', 'asoc/topic/extcon' and 'asoc/topic/fsl' into asoc-next 2016-12-12 15:52:58 +00:00
nuc900
omap ASoC: omap-pcm: off-by-one in 'omap_pcm_limit_supported_formats' 2016-09-01 20:56:16 +01:00
pxa Merge remote-tracking branches 'asoc/topic/wm9712', 'asoc/topic/wm9713' and 'asoc/topic/zte' into asoc-next 2016-12-12 15:53:32 +00:00
qcom Merge remote-tracking branches 'asoc/topic/of-graph', 'asoc/topic/pxa', 'asoc/topic/qcom' and 'asoc/topic/rk808' into asoc-next 2016-12-12 15:53:07 +00:00
rockchip ASoC: rockchip: constify snd_soc_ops structures 2016-10-24 18:33:17 +01:00
samsung Merge remote-tracking branches 'asoc/topic/rt5665', 'asoc/topic/rt5670', 'asoc/topic/rt5677', 'asoc/topic/samsung' and 'asoc/topic/simple' into asoc-next 2016-12-12 15:53:18 +00:00
sh ASoC: rsnd: setup BRGCKR/BRRA/BRRB when starting 2016-12-07 15:47:45 +00:00
sirf
spear
sti Merge remote-tracking branches 'asoc/topic/stac9766', 'asoc/topic/sti', 'asoc/topic/sti-codec', 'asoc/topic/sunxi' and 'asoc/topic/tegra' into asoc-next 2016-12-12 15:53:21 +00:00
sunxi ASoC: sun4i-codec: Add support for H3 codec 2016-11-30 18:06:51 +00:00
tegra ASoC: tegra: constify snd_soc_ops structures 2016-10-24 18:34:41 +01:00
txx9
ux500 ASoC: ux500: fix spelling mistake "Unsopported" -> "Unsupported" 2016-09-03 11:59:37 +01:00
xtensa
zte ASoC: zte: spdif: correct ZX_SPDIF_CLK_RAT define 2016-12-08 16:09:44 +00:00
Kconfig
Makefile
soc-ac97.c ASoC: ac97: constify gpio_chip structures 2016-09-12 20:04:28 +01:00
soc-cache.c
soc-compress.c ASoC: compress: Add support for compress dai ops 2016-11-13 09:35:35 +00:00
soc-core.c Merge remote-tracking branches 'asoc/topic/tlv320aic31xx', 'asoc/topic/topology', 'asoc/topic/uda1380', 'asoc/topic/wm2200' and 'asoc/topic/wm8523' into asoc-next 2016-12-12 15:53:25 +00:00
soc-dapm.c ASoC: dapm: Implement stereo mixer control support 2016-11-02 09:55:28 -06:00
soc-devres.c
soc-generic-dmaengine-pcm.c ASoC: Drop SND_DMAENGINE_PCM_FLAG_CUSTOM_CHANNEL_NAME flag 2016-10-25 20:22:53 +01:00
soc-io.c
soc-jack.c
soc-ops.c ASoC: core: fix shift used for second item in snd_soc_get_enum_double 2016-09-01 20:58:05 +01:00
soc-pcm.c ASoC: Make return type of dpcm_state_string() const char * 2016-11-22 16:45:46 +00:00
soc-topology.c ASoC: topology: avoid uninitialized kcontrol_type 2016-12-12 15:43:02 +00:00
soc-utils.c ASoC: core: Add component pin control functions 2016-11-30 17:16:09 +00:00