Skip to content

ASoC: Intel: soc-acpi-intel-ptl-match: Remove unnecessary cs42l43 match#5773

Open
charleskeepax wants to merge 2 commits into
thesofproject:topic/sof-devfrom
charleskeepax:sof-dev
Open

ASoC: Intel: soc-acpi-intel-ptl-match: Remove unnecessary cs42l43 match#5773
charleskeepax wants to merge 2 commits into
thesofproject:topic/sof-devfrom
charleskeepax:sof-dev

Conversation

@charleskeepax
Copy link
Copy Markdown

For PTL onwards we are intending to rely on function topologies, rather than using a match table for each system type. Remove this unnecessary match table entry. Having the match entries can mean that systems match when they should use function topologies instead, resulting in incorrect audio configurations. Although, admittedly this is not too likely with this 6x amp configuration as those are quite rare, but best to follow best practice.

Note there is a single remaining match which does currently need a match as it contains custom magic in the topology. More work will be required to figure out how we guard off situations like that from interfering with more generic systems.

For PTL onwards we are intending to rely on function topologies,
rather than using a match table for each system type. Remove this
unnecessary match table entry. Having the match entries can
mean that systems match when they should use function topologies
instead, resulting in incorrect audio configurations. Although,
admittedly this is not too likely with this 6x amp configuration
as those are quite rare, but best to follow best practice.

Note there is a single remaining match which does currently need
a match as it contains custom magic in the topology. More work
will be required to figure out how we guard off situations like
that from interfering with more generic systems.

Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
bardliao
bardliao previously approved these changes May 13, 2026
bardliao
bardliao previously approved these changes May 13, 2026
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates Intel PTL SoundWire machine matching to prefer function topology selection over a per-platform match entry, and adds a SoundWire DMI quirk to ignore a ghost RT722 ACPI device on specific PTL systems to avoid incorrect enumeration.

Changes:

  • Remove the PTL SoundWire machine match entry for the cs42l43 + 6x cs35l56 configuration to avoid preempting function-topology based selection.
  • Add a new DMI-based _ADR remap quirk to drop a ghost RT722 device (by remapping its _ADR to 0) on select ASUS/Lenovo PTL platforms.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
sound/soc/intel/common/soc-acpi-intel-ptl-match.c Removes an explicit cs42l43+cs35l56x6 match entry so PTL systems rely on function topologies instead.
drivers/soundwire/dmi-quirks.c Adds a DMI quirk table entry to ignore a ghost Realtek RT722 ACPI device on specific PTL systems.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

{
0x000330025d072201ull,
0x0000000000000000ull
},
Comment on lines 226 to 231
}
};

static const struct snd_soc_acpi_adr_device cs35l56_1_3amp_adr[] = {
{
.adr = 0x00013001fa355601ull,
.num_endpoints = 1,
.endpoints = &spk_1_endpoint,
.name_prefix = "AMP1"
},
{
.adr = 0x00013101fa355601ull,
.num_endpoints = 1,
.endpoints = &spk_2_endpoint,
.name_prefix = "AMP2"
},
{
.adr = 0x00013201fa355601ull,
.num_endpoints = 1,
.endpoints = &spk_3_endpoint,
.name_prefix = "AMP3"
}
};

static const struct snd_soc_acpi_adr_device cs35l56_3_3amp_adr[] = {
{
.adr = 0x00033301fa355601ull,
.num_endpoints = 1,
.endpoints = &spk_4_endpoint,
.name_prefix = "AMP4"
},
{
.adr = 0x00033401fa355601ull,
.num_endpoints = 1,
.endpoints = &spk_5_endpoint,
.name_prefix = "AMP5"
},
{
.adr = 0x00033501fa355601ull,
.num_endpoints = 1,
.endpoints = &spk_6_endpoint,
.name_prefix = "AMP6"
}
};

static const struct snd_soc_acpi_adr_device rt711_sdca_0_adr[] = {
{
.adr = 0x000030025D071101ull,
Many systems ship with a Realtek audio codec in the ACPI that doesn't
physically exist in the system. This confuses the newer function
topology system that creates the soundcard, as it builds the card based
on the the ACPI information.

Whilst we are working with the laptop vendors to try and stop this
happening there are quite a few systems where this has shipped. Add a
quirk to disable this "ghost" device.

Currently this patch should cover:
 - Asus UX5406AA
 - Lenovo Yoga Pro 9i (83SF)
 - Lenovo Yoga Slim 7 Ultra (83QK)

Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants