Re: [PATCH v3 0/3] Fix CS35L56 amplifier on Intel LPSS SPI with broken ACPI cs-gpios
flat view
From: Juan Jimenez Carrero <hidden>
Date: 2026-09-16 21:24:24
Also in:
linux-spi, lkml, platform-driver-x86
On Tue, 1 Sep 2026 21:26:22 +0200, Khalil wrote:
v3 of the patch series fixing dual CS35L56 amplifiers on HP laptops
Following up on my earlier reply, where I had only run the earlier gist version: I have now tested v3 on the same machine. HP EliteBook 8 G1i 14 inch, DMI board 8D8A, SKU D75TQET#ABE BIOS X91 Ver. 01.05.02 2x Cirrus Logic CS35L54 Rev B0 OTP4 fw:3.4.4, ACPI HID CSC3554 Kernel: linux-omarchy 7.2.5 (v7.2.5 plus the patch set of Omarchy, an Arch-based distribution) What was tested: 2/3 and 3/3, built out of tree as modules against that kernel's headers. The distribution kernel carries a sound backport that also touches serial-multi-instantiate.c; 2/3 applies on top of it with --fuzz=0. 1/3 was not applied, because CONFIG_SPI=y there. Looking at why the result still worked: on this path 2/3 installs the descriptor in ctlr->cs_gpiods and never presets spi->cs_gpiod, spi_alloc_device() zero-allocates, and __spi_add_device() is the only place the device's cs_gpiod is assigned. So the new check in 1/3 is always true here and does not change behaviour on this platform. I may be missing a case where 2/3 relies on it, but on this machine 2/3 + 3/3 alone were sufficient. Log from reloading the modules at runtime: Serial bus multi instantiate pseudo device driver CSC3554:00: Applying CS GPIO quirk for HP EliteBook 8 G1i 16 inch Serial bus multi instantiate pseudo device driver CSC3554:00: Extending num_chipselect from 1 to 2 for CS1 Serial bus multi instantiate pseudo device driver CSC3554:00: Acquired CS GPIO for CS1 from ACPI GpioIo[0] Serial bus multi instantiate pseudo device driver CSC3554:00: Installed GPIO CS on controller for CS1 cs35l56-hda spi1-CSC3554:00-cs35l54-hda.0: DSP system name: '103C8D8F', amp name: 'AMP1' cs35l56-hda spi1-CSC3554:00-cs35l54-hda.1: DSP system name: '103C8D8F', amp name: 'AMP2' cs35l56-hda spi1-CSC3554:00-cs35l54-hda.0: Calibration applied cs35l56-hda spi1-CSC3554:00-cs35l54-hda.1: Calibration applied A cold boot shows the same quirk, GPIO, AMP1/AMP2 and calibration lines. Both amplifiers bind to the codec and the internal speakers play in stereo. One small note on the quirk table: the entry's .ident is "HP EliteBook 8 G1i 16 inch", but this 14 inch model reports the same DMI board name 8D8A (and has CS35L54 rather than CS35L56 amplifiers), so it matches too. Only the label is narrower than the match. I'll send Tested-by on 2/3 and 3/3 individually, since 1/3 was not part of what I ran. The offer to test HP's fixed BIOS still stands. Juan Jimenez Carrero