[PATCH] soundwire: dmi-quirks: Disable ghost Realtek on Asus Zenbook Duo

Charles Keepax posted 1 patch 4 days, 16 hours ago
drivers/soundwire/dmi-quirks.c | 7 +++++++
1 file changed, 7 insertions(+)
[PATCH] soundwire: dmi-quirks: Disable ghost Realtek on Asus Zenbook Duo
Posted by Charles Keepax 4 days, 16 hours ago
The Asus Zenbook Duo also has a Realtek device in the ACPI that
doesn't exist in the physical hardware. This confuses the machine
driver into attempting to create DAI links for the device. Add a
quirk to remove this device.

Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
---
 drivers/soundwire/dmi-quirks.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/soundwire/dmi-quirks.c b/drivers/soundwire/dmi-quirks.c
index 62cee6e2179da..f738e547a1f30 100644
--- a/drivers/soundwire/dmi-quirks.c
+++ b/drivers/soundwire/dmi-quirks.c
@@ -200,6 +200,13 @@ static const struct dmi_system_id adr_remap_quirk_table[] = {
 		},
 		.driver_data = (void *)ghost_realtek,
 	},
+	{
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "ASUS"),
+			DMI_MATCH(DMI_BOARD_NAME, "UX8407AA"),
+		},
+		.driver_data = (void *)ghost_realtek,
+	},
 	{
 		.matches = {
 			DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
-- 
2.47.3
Re: [PATCH] soundwire: dmi-quirks: Disable ghost Realtek on Asus Zenbook Duo
Posted by Pierre-Louis Bossart 4 days, 11 hours ago
On 7/20/26 11:57, Charles Keepax wrote:
> The Asus Zenbook Duo also has a Realtek device in the ACPI that
> doesn't exist in the physical hardware. This confuses the machine
> driver into attempting to create DAI links for the device. Add a
> quirk to remove this device.
> 
> Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.dev>

This is likely to be a never-ending race... I wonder if the machine
description used to find the relevant machine driver could be used to
drop that ghost device, or if there would be any merit in having a quirk
file provided to distros and read via e.g. sysfs to have faster patching
done by userspace.

> ---
>  drivers/soundwire/dmi-quirks.c | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/drivers/soundwire/dmi-quirks.c b/drivers/soundwire/dmi-quirks.c
> index 62cee6e2179da..f738e547a1f30 100644
> --- a/drivers/soundwire/dmi-quirks.c
> +++ b/drivers/soundwire/dmi-quirks.c
> @@ -200,6 +200,13 @@ static const struct dmi_system_id adr_remap_quirk_table[] = {
>  		},
>  		.driver_data = (void *)ghost_realtek,
>  	},
> +	{
> +		.matches = {
> +			DMI_MATCH(DMI_SYS_VENDOR, "ASUS"),
> +			DMI_MATCH(DMI_BOARD_NAME, "UX8407AA"),
> +		},
> +		.driver_data = (void *)ghost_realtek,
> +	},
>  	{
>  		.matches = {
>  			DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),