Re: [External] [PATCH 1/2] platform/x86: thinkpad_acpi: Restore X1 Carbon 9th Gen dual fan quirk

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 5/2/22 13:44, Mark Pearson wrote:
> 
> 
> On 5/2/22 13:42, Lyude Paul wrote:
>> Some answers/comments down below
>>
>> On Fri, 2022-04-29 at 21:25 -0400, Mark Pearson wrote:
>>> Hi Lyude
>>>
>>> On 4/29/22 17:14, Lyude Paul wrote:
>>>> The new method of probing dual fan support introduced in:
>>>>
>>>> bf779aaf56ea ("platform/x86: thinkpad_acpi: Add dual fan probe")
>>>>
>>>> While this commit says this works on the X1 Carbon 9th Gen, it actually
>>>> just results in hiding the second fan on my local machine. Additionally,
>>>> I'm fairly sure this machine powers on quite often without either of the
>>>> two fans spinning.
>>>>
>>>> So let's fix this by adding back the dual fan quirk for the X1 Carbon 9th
>>>> Gen.
>>>>
>>>> Signed-off-by: Lyude Paul <lyude@xxxxxxxxxx>
>>>> Fixes: bf779aaf56ea ("platform/x86: thinkpad_acpi: Add dual fan probe")
>>>> Cc: Mark Pearson <markpearson@xxxxxxxxxx>
>>>> Cc: Hans de Goede <hdegoede@xxxxxxxxxx>
>>>> Cc: Henrique de Moraes Holschuh <hmh@xxxxxxxxxx>
>>>> Cc: Mark Gross <markgross@xxxxxxxxxx>
>>>> Cc: ibm-acpi-devel@xxxxxxxxxxxxxxxxxxxxx
>>>> Cc: platform-driver-x86@xxxxxxxxxxxxxxx
>>>> ---
>>>>  drivers/platform/x86/thinkpad_acpi.c | 1 +
>>>>  1 file changed, 1 insertion(+)
>>>>
>>>> diff --git a/drivers/platform/x86/thinkpad_acpi.c
>>>> b/drivers/platform/x86/thinkpad_acpi.c
>>>> index c568fae56db2..9067fd0a945c 100644
>>>> --- a/drivers/platform/x86/thinkpad_acpi.c
>>>> +++ b/drivers/platform/x86/thinkpad_acpi.c
>>>> @@ -8699,6 +8699,7 @@ static const struct tpacpi_quirk fan_quirk_table[]
>>>> __initconst = {
>>>>         TPACPI_Q_LNV3('N', '2', 'E', TPACPI_FAN_2CTL),  /* P1 / X1 Extreme
>>>> (1st gen) */
>>>>         TPACPI_Q_LNV3('N', '2', 'O', TPACPI_FAN_2CTL),  /* P1 / X1 Extreme
>>>> (2nd gen) */
>>>>         TPACPI_Q_LNV3('N', '3', '0', TPACPI_FAN_2CTL),  /* P15 (1st gen) /
>>>> P15v (1st gen) */
>>>> +       TPACPI_Q_LNV3('N', '3', '2', TPACPI_FAN_2CTL),  /* X1 Carbon (9th
>>>> gen) */
>>>>         TPACPI_Q_LNV3('N', '3', '7', TPACPI_FAN_2CTL),  /* T15g (2nd gen)
>>>> */
>>>>         TPACPI_Q_LNV3('N', '1', 'O', TPACPI_FAN_NOFAN), /* X1 Tablet (2nd
>>>> gen) */
>>>>  };
>>> I just double checked this on my X1C9 - and it's working correctly. 2nd
>>> fan is detected correctly.
>>>
>>> I'd rather understand why it's not working on your setup then just
>>> re-introduce the quirk.
>>
>> Of course! I figured as much, it's just easy to start conversations with a
>> revert :P
>>
>>>
>>> What happens on your system when the
>>>   res = fan2_get_speed(&speed);
>>> is called? If that is failing it means your 2nd fan isn't responding and
>>> that's not supposed to happen. Could you let me know if you get an error
>>> code, if it happens every boot, etc
>>> I assume when the function is called later it works successfully?
>>
>> It definitely seems to happen every boot, not sure about the error code it
>> returns. I will check and get you this info asap
>>
>>>
>>> Also please confirm which BIOS and EC version you have.
>>
>> BIOS version N32ET75W (1.51) release date 12/02/2021, embedded controller is
>> 0.1.32
>>
>>
> Thanks!
> 
> Along with Thomas' notes I think I've found the problem (though still
> bemused why I don't see the problem on my X1C9 and I tested on multiple
> platforms previously...so it is somewhat weird).
> 
> Working on a fix - will try and have that out for review later today or
> tomorrow.
> 
Not sure exactly what the etiquette here is for the mailing list but I
just posted an updated patch "platform/x86: thinkpad_acpi: Correct dual
fan probe" that I think addresses all the issues raised in this patch
sequence.

Please let me know any feedback or concerns. And thanks for raising this!

Mark



[Index of Archives]     [LM Sensors]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux