Re: [PATCH v2 2/3] ASoC: Intel: soc-acpi-cht: Add Lenovo Yoga Book entries

From: Péter Ujfalusi

Date: Mon Mar 02 2026 - 10:52:03 EST




On 01/03/2026 23:33, Yauhen Kharuzhy wrote:
> Lenovo Yoga Book YB1-X91 device uses a Cherry Trail SoC and has a valid
> ACPI DSDT entry for the RT5677 codec. This entry has some non-standard
> resource definitions, such as jack detection chip information, and
> hardware has some additional GPIO controls so use 'cht-yogabook'
> for the driver name instead of some default (like 'cht-bsw-rt5677').
>
> Lenovo Yoga Book YB1-X90 device (Android version of the tablet) has the
> same hardware configuration but lacks a valid ACPI DSDT entry for the
> codec, so add DMI match data for it and use the same machine data as for
> YB1-X91.
>
> Signed-off-by: Yauhen Kharuzhy <jekhor@xxxxxxxxx>
> ---
> sound/soc/intel/common/soc-acpi-intel-cht-match.c | 40 +++++++++++++++++++++++
> 1 file changed, 40 insertions(+)
>
> diff --git a/sound/soc/intel/common/soc-acpi-intel-cht-match.c b/sound/soc/intel/common/soc-acpi-intel-cht-match.c
> index 57097c1d011e..8673ade66e9d 100644
> --- a/sound/soc/intel/common/soc-acpi-intel-cht-match.c
> +++ b/sound/soc/intel/common/soc-acpi-intel-cht-match.c
> @@ -17,6 +17,14 @@ static struct snd_soc_acpi_mach cht_surface_mach = {
> .sof_tplg_filename = "sof-cht-rt5645.tplg",
> };
>
> +static struct snd_soc_acpi_mach cht_yogabook_mach = {
> + .id = "10EC5677",
> + .drv_name = "cht-yogabook",
> + .fw_filename = "intel/fw_sst_22a8.bin",
> + .board = "cht-yogabook",
> + .sof_tplg_filename = "sof-cht-rt5677.tplg",
> +};
> +
> static struct snd_soc_acpi_mach cht_lenovo_yoga_tab3_x90_mach = {
> .id = "10WM5102",
> .drv_name = "bytcr_wm5102",
> @@ -33,6 +41,24 @@ static const struct dmi_system_id cht_table[] = {
> DMI_MATCH(DMI_PRODUCT_NAME, "Surface 3"),
> },
> },
> + {
> + .ident = "Lenovo Yoga Book YB1-X91",
> + .driver_data = (void *)&cht_yogabook_mach,
> + /* YB1-X91L/F */
> + .matches = {
> + DMI_MATCH(DMI_PRODUCT_NAME, "Lenovo YB1-X91"),
> + }
> + },
> + {
> + .ident = "Lenovo Yoga Book YB1-X90",
> + .driver_data = (void *)&cht_yogabook_mach,
> + /* YB1-X90L/F, codec is not listed in DSDT */
> + .matches = {
> + DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Intel Corporation"),
> + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "CHERRYVIEW D1 PLATFORM"),
> + DMI_EXACT_MATCH(DMI_PRODUCT_VERSION, "YETI-11"),
> + }
> + },
> {
> /*
> * The Lenovo Yoga Tab 3 Pro YT3-X90, with Android factory OS
> @@ -121,6 +147,20 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_cherrytrail_machines[] = {
> .board = "cht-bsw",
> .sof_tplg_filename = "sof-cht-rt5670.tplg",
> },
> + /*
> + * The only known Cherry Trail device with RT5677 codec and 10EC677
> + * DSTD entry is the Lenovo Yoga Book YB1-X91. It has a device-specific
> + * driver, so check DMI and use a machine quirk to override the default
> + * (non-existent) machine driver.
> + */
> + {
> + .id = "10EC5677",
> + .drv_name = "cht-bsw-rt5677",

there is no such driver exists

> + .fw_filename = "intel/fw_sst_22a8.bin",
> + .board = "cht-bsw",
> + .machine_quirk = cht_quirk,
> + .sof_tplg_filename = "sof-cht-rt5677.tplg",

There is no such topology exists

> + },
> {
> .comp_ids = &rt5645_comp_ids,
> .drv_name = "cht-bsw-rt5645",
>

--
Péter