Re: [PATCH 6/8] ACPI/platform: add AWDZ8399 to serial-multi-instantiate
From: Ilpo Järvinen
Date: Tue Jul 21 2026 - 11:25:37 EST
On Fri, 17 Jul 2026, Marco Giunta wrote:
> Register the AWINIC AW88399 ACPI hardware ID "AWDZ8399" with the
> serial-multi-instantiate driver and add it to the ACPI scan ignore
> list so that the two I2C amplifier instances on Lenovo Legion laptops
> are enumerated as separate I2C client devices rather than a single
> ACPI platform device.
>
> The SMI node creates two instances named "aw88399-hda" with
> IRQ_RESOURCE_AUTO, matching the pattern used by CS35L41.
>
> Tested-by: Nadim Kobeissi <nadim@symbolic.software>
> Tested-by: Xia Yun'an <imitoy@xxxxxxxxxx>
> Tested-by: Munzir Taha <munzirtaha@xxxxxxxxx>
> Co-developed-by: Yakov Till <yakov.till@xxxxxxxxx>
> Signed-off-by: Yakov Till <yakov.till@xxxxxxxxx>
> Signed-off-by: Marco Giunta <marco_giunta@xxxxxxxxxx>
> ---
> drivers/acpi/scan.c | 1 +
> drivers/platform/x86/serial-multi-instantiate.c | 10 ++++++++++
> 2 files changed, 11 insertions(+)
>
> diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c
> index 9a7ac2eb9ce0..4f4552b1551b 100644
> --- a/drivers/acpi/scan.c
> +++ b/drivers/acpi/scan.c
> @@ -1752,6 +1752,7 @@ static bool acpi_device_enumeration_by_parent(struct acpi_device *device)
> * by the drivers/platform/x86/serial-multi-instantiate.c driver, which
> * knows which client device id to use for each resource.
> */
> + {"AWDZ8399", },
> {"BSG1160", },
> {"BSG2150", },
> {"CSC3551", },
> diff --git a/drivers/platform/x86/serial-multi-instantiate.c b/drivers/platform/x86/serial-multi-instantiate.c
> index 1a369334f9cb..3e89fcdd45f7 100644
> --- a/drivers/platform/x86/serial-multi-instantiate.c
> +++ b/drivers/platform/x86/serial-multi-instantiate.c
> @@ -307,6 +307,15 @@ static void smi_remove(struct platform_device *pdev)
> smi_devs_unregister(smi);
> }
>
> +static const struct smi_node aw88399_hda = {
> + .instances = {
> + { "aw88399-hda", IRQ_RESOURCE_AUTO, 0 },
> + { "aw88399-hda", IRQ_RESOURCE_AUTO, 0 },
> + {}
> + },
> + .bus_type = SMI_AUTO_DETECT,
> +};
> +
> static const struct smi_node bsg1160_data = {
> .instances = {
> { "bmc150_accel", IRQ_RESOURCE_GPIO, 0 },
> @@ -405,6 +414,7 @@ static const struct smi_node tas2781_hda = {
> * drivers/acpi/scan.c: acpi_device_enumeration_by_parent().
> */
> static const struct acpi_device_id smi_acpi_ids[] = {
> + { "AWDZ8399", (unsigned long)&aw88399_hda },
> { "BSG1160", (unsigned long)&bsg1160_data },
> { "BSG2150", (unsigned long)&bsg2150_data },
> { "CSC3551", (unsigned long)&cs35l41_hda },
>
Acked-by: Ilpo Järvinen <ilpo.jarvinen@xxxxxxxxxxxxxxx>
--
i.