mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-27 17:18:59 +00:00
46 lines
1.4 KiB
Diff
46 lines
1.4 KiB
Diff
|
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,
|