* [PATCH] ALSA: ctxfi: Fix silent playback on Titanium HD (SB1270)
@ 2026-09-30 11:58 Harin Lee
2026-09-30 12:29 ` Takashi Iwai
0 siblings, 1 reply; 2+ messages in thread
From: Harin Lee @ 2026-09-30 11:58 UTC (permalink / raw)
To: Jaroslav Kysela, Takashi Iwai, Dany Patoine
Cc: linux-sound, linux-kernel, regressions, Harin Lee
Commit 4b490e0d103c ("ALSA: ctxfi: Add ADC helper functions for GPIO")
moved the GPIO_DATA read into hw_adc_stop(), but the Titanium HD
(SB1270) setup in hw_adc_init() uses the local data variable holding
the GPIO_CTRL value.
Writing this value to GPIO_DATA sets the output mute bits. Playback
runs without errors, but the outputs stay muted.
Re-read GPIO_DATA before setting the speed mode bits. Also, add the
delay after writing the mode bits, as in the original sequence.
On affected kernels, switching the output selection was reported to
restore clean playback.
Fixes: 4b490e0d103c ("ALSA: ctxfi: Add ADC helper functions for GPIO")
Cc: stable@vger.kernel.org
Reported-by: Dany Patoine <dany_patoine@hotmail.com>
Closes: https://lore.kernel.org/linux-sound/DM6PR02MB5433A42E81FEFAC400DD1905EA8B2@DM6PR02MB5433.namprd02.prod.outlook.com/
Signed-off-by: Harin Lee <me@harin.net>
---
sound/pci/ctxfi/cthw20k2.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/sound/pci/ctxfi/cthw20k2.c b/sound/pci/ctxfi/cthw20k2.c
index 36066ffe8784..26a6fa69f5f5 100644
--- a/sound/pci/ctxfi/cthw20k2.c
+++ b/sound/pci/ctxfi/cthw20k2.c
@@ -1895,6 +1895,7 @@ static int hw_adc_init(struct hw *hw, const struct adc_conf *info)
if (hw->model == CTSB1270) {
/* Set up the PCM4220 ADC on Titanium HD */
+ data = hw_read_20kx(hw, GPIO_DATA);
data &= ~0x0C;
if (1 == info->msr)
data |= 0x00; /* Single Speed Mode 32-50kHz */
@@ -1903,6 +1904,7 @@ static int hw_adc_init(struct hw *hw, const struct adc_conf *info)
else
data |= 0x04; /* Quad Speed Mode 108kHz-216kHz */
hw_write_20kx(hw, GPIO_DATA, data);
+ usleep_range(10000, 11000);
}
hw_adc_start(hw);
--
2.55.0
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [PATCH] ALSA: ctxfi: Fix silent playback on Titanium HD (SB1270)
2026-09-30 11:58 [PATCH] ALSA: ctxfi: Fix silent playback on Titanium HD (SB1270) Harin Lee
@ 2026-09-30 12:29 ` Takashi Iwai
0 siblings, 0 replies; 2+ messages in thread
From: Takashi Iwai @ 2026-09-30 12:29 UTC (permalink / raw)
To: Harin Lee
Cc: Jaroslav Kysela, Takashi Iwai, Dany Patoine, linux-sound,
linux-kernel, regressions
On Wed, 30 Sep 2026 13:58:24 +0200,
Harin Lee wrote:
>
> Commit 4b490e0d103c ("ALSA: ctxfi: Add ADC helper functions for GPIO")
> moved the GPIO_DATA read into hw_adc_stop(), but the Titanium HD
> (SB1270) setup in hw_adc_init() uses the local data variable holding
> the GPIO_CTRL value.
>
> Writing this value to GPIO_DATA sets the output mute bits. Playback
> runs without errors, but the outputs stay muted.
>
> Re-read GPIO_DATA before setting the speed mode bits. Also, add the
> delay after writing the mode bits, as in the original sequence.
>
> On affected kernels, switching the output selection was reported to
> restore clean playback.
>
> Fixes: 4b490e0d103c ("ALSA: ctxfi: Add ADC helper functions for GPIO")
> Cc: stable@vger.kernel.org
> Reported-by: Dany Patoine <dany_patoine@hotmail.com>
> Closes: https://lore.kernel.org/linux-sound/DM6PR02MB5433A42E81FEFAC400DD1905EA8B2@DM6PR02MB5433.namprd02.prod.outlook.com/
> Signed-off-by: Harin Lee <me@harin.net>
Applied now. Thanks.
Takashi
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-09-30 12:29 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-30 11:58 [PATCH] ALSA: ctxfi: Fix silent playback on Titanium HD (SB1270) Harin Lee
2026-09-30 12:29 ` Takashi Iwai
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®