linux_dsm_epyc7002/sound/soc/codecs
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
..
88pm860x-codec.c ASoC: 88pm860x-codec: Fix possibly missing string termination 2014-10-07 13:13:22 +01:00
88pm860x-codec.h
ab8500-codec.c
ab8500-codec.h
ac97.c
ad193x-i2c.c
ad193x-spi.c
ad193x.c
ad193x.h
ad1836.c
ad1836.h
ad1980.c
ad1980.h
ad73311.c
ad73311.h
adau17x1.c
adau17x1.h
adau1373.c
adau1373.h
adau1701.c
adau1701.h
adau1761-i2c.c
adau1761-spi.c
adau1761.c ASoC: adau1761: Fix input PGA volume 2014-10-22 10:24:14 +01:00
adau1761.h
adau1781-i2c.c
adau1781-spi.c
adau1781.c
adau1781.h
adau1977-i2c.c
adau1977-spi.c
adau1977.c
adau1977.h
adav80x.c
adav80x.h
adav801.c
adav803.c
ads117x.c
ak4104.c
ak4535.c
ak4535.h
ak4554.c
ak4641.c
ak4641.h
ak4642.c
ak4671.c
ak4671.h
ak5386.c
alc5623.c
alc5623.h
alc5632.c
alc5632.h
arizona.c
arizona.h
bt-sco.c
cq93vc.c
cs35l32.c
cs35l32.h
cs42l51-i2c.c
cs42l51.c
cs42l51.h
cs42l52.c 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
cs42l52.h
cs42l56.c
cs42l56.h
cs42l73.c
cs42l73.h
cs42xx8-i2c.c
cs42xx8.c
cs42xx8.h
cs4265.c
cs4265.h
cs4270.c
cs4271.c
cx20442.c
cx20442.h
da732x_reg.h
da732x.c 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
da732x.h
da7210.c
da7213.c
da7213.h
da9055.c
dmic.c
es8328-i2c.c
es8328-spi.c
es8328.c
es8328.h
hdmi.c
isabelle.c
isabelle.h
jz4740.c
Kconfig Merge remote-tracking branches 'asoc/topic/txx9', 'asoc/topic/wm8978' and 'asoc/topic/wm8994' into asoc-next 2014-10-06 12:49:09 +01:00
l3.c
lm4857.c
lm49453.c
lm49453.h
Makefile Merge remote-tracking branches 'asoc/topic/simple', 'asoc/topic/sirf', 'asoc/topic/spdif', 'asoc/topic/ssm2602' and 'asoc/topic/ssm4567' into asoc-next 2014-10-06 12:49:05 +01:00
max9768.c
max9850.c
max9850.h
max9877.c
max9877.h
max98088.c
max98088.h
max98090.c Merge remote-tracking branches 'asoc/topic/max98090', 'asoc/topic/rockchip', 'asoc/topic/rsnd' and 'asoc/topic/rt286' into asoc-next 2014-10-06 12:49:02 +01:00
max98090.h
max98095.c
max98095.h
mc13783.c ASoC: mc13783: Ensure we only try to dereference valid of_nodes 2014-10-08 15:42:33 +01:00
mc13783.h
ml26124.c
ml26124.h
pcm512x-i2c.c
pcm512x-spi.c
pcm512x.c
pcm512x.h
pcm1681.c
pcm1792a.c
pcm1792a.h
pcm3008.c
pcm3008.h
rl6231.c
rl6231.h
rt286.c Merge remote-tracking branches 'asoc/topic/max98090', 'asoc/topic/rockchip', 'asoc/topic/rsnd' and 'asoc/topic/rt286' into asoc-next 2014-10-06 12:49:02 +01:00
rt286.h
rt5631.c
rt5631.h
rt5640.c Merge remote-tracking branches 'asoc/topic/fsl-easi', 'asoc/topic/fsl-sai', 'asoc/topic/fsl-ssi' and 'asoc/topic/intel' into asoc-next 2014-10-06 12:48:59 +01:00
rt5640.h
rt5645.c
rt5645.h
rt5651.c
rt5651.h
rt5670-dsp.h
rt5670.c
rt5670.h
rt5677.c 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
rt5677.h
sgtl5000.c ASoC: sgtl5000: Allow 8kHz playback in codec slave mode 2014-11-27 17:42:01 +00:00
sgtl5000.h
si476x.c
sigmadsp-i2c.c
sigmadsp-regmap.c
sigmadsp.c
sigmadsp.h
sirf-audio-codec.c
sirf-audio-codec.h
sn95031.c
sn95031.h
spdif_receiver.c
spdif_transmitter.c
ssm2518.c
ssm2518.h
ssm2602-i2c.c
ssm2602-spi.c
ssm2602.c Merge remote-tracking branches 'asoc/topic/simple', 'asoc/topic/sirf', 'asoc/topic/spdif', 'asoc/topic/ssm2602' and 'asoc/topic/ssm4567' into asoc-next 2014-10-06 12:49:05 +01:00
ssm2602.h
ssm4567.c
sta32x.c
sta32x.h
sta350.c
sta350.h
sta529.c
stac9766.c
stac9766.h
tas2552.c
tas2552.h
tas5086.c
tlv320aic3x.c 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
tlv320aic3x.h
tlv320aic23-i2c.c
tlv320aic23-spi.c
tlv320aic23.c
tlv320aic23.h
tlv320aic26.c
tlv320aic26.h
tlv320aic31xx.c
tlv320aic31xx.h
tlv320aic32x4.c
tlv320aic32x4.h
tlv320dac33.c
tlv320dac33.h
tpa6130a2.c
tpa6130a2.h
twl4030.c
twl6040.c
twl6040.h
uda134x.c
uda134x.h
uda1380.c
uda1380.h
wl1273.c
wl1273.h
wm0010.c
wm1250-ev1.c
wm2000.c
wm2000.h
wm2200.c
wm2200.h
wm5100-tables.c
wm5100.c
wm5100.h
wm5102.c
wm5102.h
wm5110.c
wm5110.h
wm8350.c
wm8350.h
wm8400.c
wm8400.h
wm8510.c
wm8510.h
wm8523.c
wm8523.h
wm8580.c
wm8580.h
wm8711.c
wm8711.h
wm8727.c
wm8728.c
wm8728.h
wm8731.c
wm8731.h
wm8737.c
wm8737.h
wm8741.c
wm8741.h
wm8750.c
wm8750.h
wm8753.c
wm8753.h
wm8770.c
wm8770.h
wm8776.c
wm8776.h
wm8782.c
wm8804.c
wm8804.h
wm8900.c
wm8900.h
wm8903.c
wm8903.h
wm8904.c
wm8904.h
wm8940.c
wm8940.h
wm8955.c
wm8955.h
wm8958-dsp2.c
wm8960.c
wm8960.h
wm8961.c
wm8961.h
wm8962.c
wm8962.h
wm8971.c
wm8971.h
wm8974.c
wm8974.h
wm8978.c
wm8978.h
wm8983.c
wm8983.h
wm8985.c
wm8985.h
wm8988.c
wm8988.h
wm8990.c
wm8990.h
wm8991.c
wm8991.h
wm8993.c
wm8993.h
wm8994.c
wm8994.h
wm8995.c
wm8995.h
wm8996.c
wm8996.h
wm8997.c
wm8997.h
wm9081.c
wm9081.h
wm9090.c
wm9090.h
wm9705.c
wm9705.h
wm9712.c
wm9712.h
wm9713.c
wm9713.h
wm_adsp.c
wm_adsp.h
wm_hubs.c
wm_hubs.h
wmfw.h