linux_dsm_epyc7002/sound/soc
Fabio Estevam 2a4cfd1022 ASoC: sgtl5000: Allow 8kHz playback in codec slave mode
When trying to play a 8kHz file with codec in slave mode we get the following
error on a mx28evk:

$ aplay -Dhw:0,0 stereo_8k.wav
Playing WAVE 'stereo_8k.wav' : Signed 16 bit Little Endian, Rate 8000 Hz, Stereo
[   21.218647] sgtl5000 0-000a: PLL not supported in slave mode
[   21.224559] sgtl5000 0-000a: 128 ratio is not supported. SYS_MCLK needs to be 256, 384 or 512 * fs
[   21.233687] sgtl5000 0-000a: ASoC: can't set sgtl5000 hw params: -22
aplay: set_params:1123: Unable to install hw params:

This error happens because we are using 'sys_fs' instead of 'frame_rate' in the
valid ratio check.

Use the real'frame_rate' so that the ratio is correctly calculated and the
playback can run.

sgtl5000 codec manual states that in 'Synchronous SYS_MCLK input' mode that the
following SYS_CLK frequencies are allowed: 256*fs, 384*fs, 512*fs.

, where fs is the sampling frequency, which can be in the range of:
8, 11.025, 16, 22.5, 32, 44.1, 48, 96 kHz.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-11-27 17:42:01 +00:00
..
adi
atmel
au1x
bcm
blackfin
cirrus
codecs ASoC: sgtl5000: Allow 8kHz playback in codec slave mode 2014-11-27 17:42:01 +00:00
davinci Merge remote-tracking branches 'asoc/topic/davinci', 'asoc/topic/dmic', 'asoc/topic/drivers', 'asoc/topic/es8328' and 'asoc/topic/fsl' into asoc-next 2014-10-06 12:48:57 +01:00
dwc
fsl ASoC: fsl: use strncpy() to prevent copying of over-long names 2014-10-22 11:38:01 +01:00
generic ASoC: simple-card: Initialize headphone and mic GPIO numbers 2014-10-07 18:24:01 +01:00
intel ASoC: Intel: HSW/BDW only support S16 and S24 formats. 2014-10-16 16:48:05 +02:00
jz4740
kirkwood
mxs
nuc900
omap Merge remote-tracking branch 'asoc/topic/component' into asoc-next 2014-10-06 12:48:51 +01:00
pxa Merge branch 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma 2014-10-18 18:11:04 -07:00
rockchip ASoC: rockchip-i2s: fix infinite loop in rockchip_snd_txctrl 2014-10-08 12:29:38 +01:00
samsung Merge remote-tracking branches 'asoc/topic/rt5645', 'asoc/topic/rt5677', 'asoc/topic/samsung', 'asoc/topic/sgtl5000' and 'asoc/topic/sh' into asoc-next 2014-10-06 12:49:03 +01:00
sh Merge remote-tracking branches 'asoc/topic/rt5645', 'asoc/topic/rt5677', 'asoc/topic/samsung', 'asoc/topic/sgtl5000' and 'asoc/topic/sh' into asoc-next 2014-10-06 12:49:03 +01:00
sirf
spear
tegra Merge remote-tracking branches 'asoc/topic/suspend', 'asoc/topic/tas2552', 'asoc/topic/tegra', 'asoc/topic/tlv320aic31xx' and 'asoc/topic/tlv320aic3x' into asoc-next 2014-10-06 12:49:07 +01:00
txx9
ux500
Kconfig ASoC: s6000: remove driver 2014-10-20 11:03:52 +01:00
Makefile ASoC: s6000: remove driver 2014-10-20 11:03:52 +01:00
soc-cache.c
soc-compress.c
soc-core.c Merge remote-tracking branch 'asoc/fix/core' into asoc-linus 2014-10-08 16:44:49 +01:00
soc-dapm.c ASoC: soc-dapm: fix use after free 2014-10-07 13:11:35 +01:00
soc-devres.c
soc-generic-dmaengine-pcm.c
soc-io.c
soc-jack.c
soc-pcm.c Merge remote-tracking branch 'asoc/fix/core' into asoc-linus 2014-10-08 16:44:49 +01:00
soc-utils.c