diff options
Diffstat (limited to 'target/linux/brcm2708/patches-4.14/950-0220-Revert-downstream-wm8804-changes.patch')
-rw-r--r-- | target/linux/brcm2708/patches-4.14/950-0220-Revert-downstream-wm8804-changes.patch | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/target/linux/brcm2708/patches-4.14/950-0220-Revert-downstream-wm8804-changes.patch b/target/linux/brcm2708/patches-4.14/950-0220-Revert-downstream-wm8804-changes.patch new file mode 100644 index 0000000000..bbc2ec0ff2 --- /dev/null +++ b/target/linux/brcm2708/patches-4.14/950-0220-Revert-downstream-wm8804-changes.patch @@ -0,0 +1,45 @@ +From 91fb8d2d0718c2de44623a300273f5144e1ebcab Mon Sep 17 00:00:00 2001 +From: Matthias Reichl <hias@horus.com> +Date: Fri, 2 Feb 2018 12:00:00 +0100 +Subject: [PATCH 220/454] Revert downstream wm8804 changes + +The format change from S24_LE to S24_3LE effectively disables 24-bit +mode as S24_3LE isn't supported by bcm2835-i2s. This causes issues +with drivers that want to use wm8804 in 24-bit mode. + +Adding the S32_LE format is also incorrect, according to the datasheet +only 16-24 bit formats are supported. + +Signed-off-by: Matthias Reichl <hias@horus.com> +--- + sound/soc/codecs/wm8804.c | 5 ++--- + 1 file changed, 2 insertions(+), 3 deletions(-) + +--- a/sound/soc/codecs/wm8804.c ++++ b/sound/soc/codecs/wm8804.c +@@ -304,7 +304,6 @@ static int wm8804_hw_params(struct snd_p + blen = 0x1; + break; + case 24: +- case 32: + blen = 0x2; + break; + default: +@@ -516,7 +515,7 @@ static const struct snd_soc_dai_ops wm88 + }; + + #define WM8804_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3LE | \ +- SNDRV_PCM_FMTBIT_S24_3LE | SNDRV_PCM_FMTBIT_S32_LE) ++ SNDRV_PCM_FMTBIT_S24_LE) + + #define WM8804_RATES (SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | \ + SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_64000 | \ +@@ -544,7 +543,7 @@ static struct snd_soc_dai_driver wm8804_ + }; + + static const struct snd_soc_codec_driver soc_codec_dev_wm8804 = { +- .idle_bias_off = false, ++ .idle_bias_off = true, + + .component_driver = { + .dapm_widgets = wm8804_dapm_widgets, |