[2/3] mfd: intel_soc_pmic_chtwc: Add Lenovo Yoga Book X90F to intel_cht_wc_models

Message ID 20230301095402.28582-1-hdegoede@redhat.com
State New
Headers
Series None |

Commit Message

Hans de Goede March 1, 2023, 9:54 a.m. UTC
  The Android Lenovo Yoga Book X90F / X90L uses the same charger / fuelgauge
setup as the already supported Windows Lenovo Yoga Book X91F/L, add
a DMI match for this to intel_cht_wc_models with driver_data
set to INTEL_CHT_WC_LENOVO_YOGABOOK1.

When the quirk for the X91F/L was initially added it was written to
also apply to the X90F/L but this does not work because the Android
version of the Yoga Book uses completely different DMI strings.
Also adjust the X91F/L quirk to reflect that it only applies to
the X91F/L models.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
 drivers/mfd/intel_soc_pmic_chtwc.c | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)
  

Comments

Hans de Goede March 1, 2023, 10:02 a.m. UTC | #1
Hi All,

Note this is not [patch 2/3] that was a mistake from my side, this is
a standalone patch.

Regards,

Hans

On 3/1/23 10:54, Hans de Goede wrote:
> The Android Lenovo Yoga Book X90F / X90L uses the same charger / fuelgauge
> setup as the already supported Windows Lenovo Yoga Book X91F/L, add
> a DMI match for this to intel_cht_wc_models with driver_data
> set to INTEL_CHT_WC_LENOVO_YOGABOOK1.
> 
> When the quirk for the X91F/L was initially added it was written to
> also apply to the X90F/L but this does not work because the Android
> version of the Yoga Book uses completely different DMI strings.
> Also adjust the X91F/L quirk to reflect that it only applies to
> the X91F/L models.
> 
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
>  drivers/mfd/intel_soc_pmic_chtwc.c | 14 +++++++++++---
>  1 file changed, 11 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/mfd/intel_soc_pmic_chtwc.c b/drivers/mfd/intel_soc_pmic_chtwc.c
> index d53dae255490..871776d511e3 100644
> --- a/drivers/mfd/intel_soc_pmic_chtwc.c
> +++ b/drivers/mfd/intel_soc_pmic_chtwc.c
> @@ -159,11 +159,19 @@ static const struct dmi_system_id cht_wc_model_dmi_ids[] = {
>  			DMI_MATCH(DMI_PRODUCT_NAME, "Mipad2"),
>  		},
>  	}, {
> -		/* Lenovo Yoga Book X90F / X91F / X91L */
> +		/* Lenovo Yoga Book X90F / X90L */
>  		.driver_data = (void *)(long)INTEL_CHT_WC_LENOVO_YOGABOOK1,
>  		.matches = {
> -			/* Non exact match to match all versions */
> -			DMI_MATCH(DMI_PRODUCT_NAME, "Lenovo YB1-X9"),
> +			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"),
> +		},
> +	}, {
> +		/* Lenovo Yoga Book X91F / X91L */
> +		.driver_data = (void *)(long)INTEL_CHT_WC_LENOVO_YOGABOOK1,
> +		.matches = {
> +			/* Non exact match to match F + L versions */
> +			DMI_MATCH(DMI_PRODUCT_NAME, "Lenovo YB1-X91"),
>  		},
>  	}, {
>  		/* Lenovo Yoga Tab 3 Pro YT3-X90F */
  
Andy Shevchenko March 1, 2023, 10:48 a.m. UTC | #2
On Wed, Mar 1, 2023 at 11:54 AM Hans de Goede <hdegoede@redhat.com> wrote:
>
> The Android Lenovo Yoga Book X90F / X90L uses the same charger / fuelgauge
> setup as the already supported Windows Lenovo Yoga Book X91F/L, add
> a DMI match for this to intel_cht_wc_models with driver_data
> set to INTEL_CHT_WC_LENOVO_YOGABOOK1.
>
> When the quirk for the X91F/L was initially added it was written to
> also apply to the X90F/L but this does not work because the Android
> version of the Yoga Book uses completely different DMI strings.
> Also adjust the X91F/L quirk to reflect that it only applies to
> the X91F/L models.

Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>

(Please, update the subject in the next version)

> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
>  drivers/mfd/intel_soc_pmic_chtwc.c | 14 +++++++++++---
>  1 file changed, 11 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/mfd/intel_soc_pmic_chtwc.c b/drivers/mfd/intel_soc_pmic_chtwc.c
> index d53dae255490..871776d511e3 100644
> --- a/drivers/mfd/intel_soc_pmic_chtwc.c
> +++ b/drivers/mfd/intel_soc_pmic_chtwc.c
> @@ -159,11 +159,19 @@ static const struct dmi_system_id cht_wc_model_dmi_ids[] = {
>                         DMI_MATCH(DMI_PRODUCT_NAME, "Mipad2"),
>                 },
>         }, {
> -               /* Lenovo Yoga Book X90F / X91F / X91L */
> +               /* Lenovo Yoga Book X90F / X90L */
>                 .driver_data = (void *)(long)INTEL_CHT_WC_LENOVO_YOGABOOK1,
>                 .matches = {
> -                       /* Non exact match to match all versions */
> -                       DMI_MATCH(DMI_PRODUCT_NAME, "Lenovo YB1-X9"),
> +                       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"),
> +               },
> +       }, {
> +               /* Lenovo Yoga Book X91F / X91L */
> +               .driver_data = (void *)(long)INTEL_CHT_WC_LENOVO_YOGABOOK1,
> +               .matches = {
> +                       /* Non exact match to match F + L versions */
> +                       DMI_MATCH(DMI_PRODUCT_NAME, "Lenovo YB1-X91"),
>                 },
>         }, {
>                 /* Lenovo Yoga Tab 3 Pro YT3-X90F */
> --
> 2.39.1
>
  
Lee Jones March 1, 2023, 2:25 p.m. UTC | #3
On Wed, 01 Mar 2023, Hans de Goede wrote:

> The Android Lenovo Yoga Book X90F / X90L uses the same charger / fuelgauge
> setup as the already supported Windows Lenovo Yoga Book X91F/L, add
> a DMI match for this to intel_cht_wc_models with driver_data
> set to INTEL_CHT_WC_LENOVO_YOGABOOK1.
> 
> When the quirk for the X91F/L was initially added it was written to
> also apply to the X90F/L but this does not work because the Android
> version of the Yoga Book uses completely different DMI strings.
> Also adjust the X91F/L quirk to reflect that it only applies to
> the X91F/L models.
> 
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
>  drivers/mfd/intel_soc_pmic_chtwc.c | 14 +++++++++++---
>  1 file changed, 11 insertions(+), 3 deletions(-)

Applied, thanks
  

Patch

diff --git a/drivers/mfd/intel_soc_pmic_chtwc.c b/drivers/mfd/intel_soc_pmic_chtwc.c
index d53dae255490..871776d511e3 100644
--- a/drivers/mfd/intel_soc_pmic_chtwc.c
+++ b/drivers/mfd/intel_soc_pmic_chtwc.c
@@ -159,11 +159,19 @@  static const struct dmi_system_id cht_wc_model_dmi_ids[] = {
 			DMI_MATCH(DMI_PRODUCT_NAME, "Mipad2"),
 		},
 	}, {
-		/* Lenovo Yoga Book X90F / X91F / X91L */
+		/* Lenovo Yoga Book X90F / X90L */
 		.driver_data = (void *)(long)INTEL_CHT_WC_LENOVO_YOGABOOK1,
 		.matches = {
-			/* Non exact match to match all versions */
-			DMI_MATCH(DMI_PRODUCT_NAME, "Lenovo YB1-X9"),
+			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"),
+		},
+	}, {
+		/* Lenovo Yoga Book X91F / X91L */
+		.driver_data = (void *)(long)INTEL_CHT_WC_LENOVO_YOGABOOK1,
+		.matches = {
+			/* Non exact match to match F + L versions */
+			DMI_MATCH(DMI_PRODUCT_NAME, "Lenovo YB1-X91"),
 		},
 	}, {
 		/* Lenovo Yoga Tab 3 Pro YT3-X90F */