openwrt/target/linux/bcm27xx/patches-6.6/950-0976-ASoC-Fix-16bit-sample-support-for-Hifiberry-DACplusA.patch
Álvaro Fernández Rojas 8c405cdccc bcm27xx: add 6.6 kernel patches
The patches were generated from the RPi repo with the following command:
git format-patch v6.6.34..rpi-6.1.y

Some patches needed rebasing and, as usual, the applied and reverted, wireless
drivers, Github workflows, READMEs and defconfigs patches were removed.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-18 18:52:49 +02:00

32 lines
1.0 KiB
Diff

From 81dd89d13d7e605be8622bf09fafccc8711e7e50 Mon Sep 17 00:00:00 2001
From: j-schambacher <joerg@hifiberry.com>
Date: Wed, 13 Mar 2024 10:31:18 +0100
Subject: [PATCH 0976/1085] ASoC: Fix 16bit sample support for Hifiberry
DACplusADC
Same issue as #5919.
'width' needs to be set independent of clocking mode.
Signed-off-by: j-schambacher <joerg@hifiberry.com>
---
sound/soc/bcm/hifiberry_dacplusadc.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
--- a/sound/soc/bcm/hifiberry_dacplusadc.c
+++ b/sound/soc/bcm/hifiberry_dacplusadc.c
@@ -229,13 +229,11 @@ static int snd_rpi_hifiberry_dacplusadc_
int ret = 0;
struct snd_soc_pcm_runtime *rtd = substream->private_data;
int channels = params_channels(params);
- int width = 32;
+ int width = snd_pcm_format_width(params_format(params));
if (snd_rpi_hifiberry_is_dacpro) {
struct snd_soc_component *component = asoc_rtd_to_codec(rtd, 0)->component;
- width = snd_pcm_format_width(params_format(params));
-
snd_rpi_hifiberry_dacplusadc_set_sclk(component,
params_rate(params));