Re: [PATCH v5] platform/x86: dell-laptop: Implement platform_profile

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

 



On Wed, May 8, 2024, at 8:24 AM, Shen, Yijun wrote:
> Hi Lyndon,
>
>  Thanks for working on this patch.
>
>
> Internal Use - Confidential
>> -----Original Message-----
>> From: Lyndon Sanche <lsanche@xxxxxxxxxx>
>> Sent: Thursday, May 2, 2024 5:58 AM
>> To: lsanche@xxxxxxxxxx
>> Cc: mario.limonciello@xxxxxxx; pali@xxxxxxxxxx; W_Armin@xxxxxx;
>> srinivas.pandruvada@xxxxxxxxxxxxxxx; ilpo.jarvinen@xxxxxxxxxxxxxxx;
>> lkp@xxxxxxxxx; Hans de Goede <hdegoede@xxxxxxxxxx>; Matthew Garrett
>> <mjg59@xxxxxxxxxxxxx>; Jonathan Corbet <corbet@xxxxxxx>; Heiner Kallweit
>> <hkallweit1@xxxxxxxxx>; Vegard Nossum <vegard.nossum@xxxxxxxxxx>;
>> platform-driver-x86@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Dell Client
>> Kernel <Dell.Client.Kernel@xxxxxxxx>
>> Subject: [PATCH v5] platform/x86: dell-laptop: Implement platform_profile
>>
>>
>> [EXTERNAL EMAIL]
>>
>> Some Dell laptops support configuration of preset fan modes through smbios
>> tables.
>>
>> If the platform supports these fan modes, set up platform_profile to change
>> these modes. If not supported, skip enabling platform_profile.
>>
>> Signed-off-by: Lyndon Sanche <lsanche@xxxxxxxxxx>
>> ---
>> v5:
>>  - Fix indent in smbios-thermal-ctl comment
>>  - Remove linux/wmi.h include
>>  - Add 'select ACPI_PLATFORM_PROFILE' to Dell KConfig
>> v4:
>>  - Make thermal_init and thermal_cleanup static
>>  - Rearrange order of added includes, did not edit current includes
>>  - Include bits.h
>>  - Switch comment style
>>  - Return error if platform_profile registering failed
>>  - Add thermal calls to call_blacklist
>>  - Align defines with tabs
>>  - Correct separation of function and error handling
>>  - Propagate error codes up
>> v3:
>>  - Convert smbios-thermal-ctl docs to multiline comment and wrap
>>  - Change thermal_mode_bits enum to directly be BIT() values
>>       - Convert related code to use this
>>  - Use FIELD_GET/PREP and GENNMASK for getting/setting thermal modes
>>       - Correct offset for getting current ACC mode, setting offset
>>               unchanged
>>  - Check if thermal_handler is allocated before freeing and
>>        unregistering platform_profile
>> v2:
>>  - Wrap smbios-thermal-ctl comment
>>  - Return proper error code when invalid state returned
>>  - Simplify platform_profile_get returns
>>  - Propogate ENOMEM error
>> ---
>
>  Dell side has an initial testing with this patch on some laptops, it 
> looks good. While changing the platform profile:
> 1. The corresponding USTT option in BIOS will be changed.
> 2. thermald will not be impacted. The related PSVT and ITMT will be 
> loaded.
>  Some Dell DTs does not have the USTT, Dell'll have a check if nothing 
> is broken.
>
>   Additional, with this patch, follow behavior is found:
>  1. For example, the platform profile is quiet.
>  2. Reboot the system and change the USTT to performance.
>  3. Boot to desktop, the platform profile is "quiet", the USTT will be 
> changed back to "quiet".
>  This looks like not a proper user experience. The platform profile 
> should honor the BIOS setting, aka, the platform profile should be 
> switched to "performance".

Hello:

Thank you for your email. This is definitely undesirable behaviour, I will have a look at the code to see why this is happening. Does it always revert to quiet on boot, or always the mode that you had switched to prior to reboot?

Do you happen to have power-profiles-daemon or something similar running? My understanding is it remembers profiles across reboots, this could potentially also revert the profile back to what it was. See this release for details:
https://gitlab.freedesktop.org/upower/power-profiles-daemon/-/releases/0.9.0

I will assume there is a bug in my code at this point. I will test with and without ppd running on my system to see if it changes across reboots.

Are USTT settings exposed in your BIOS configuration menu? On my laptop they are not and I have to use smbios-thermal-ctl.

Thank you,

Lyndon




[Index of Archives]     [Linux Kernel Development]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux