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