Hi All, On 25-Oct-24 9:15 PM, Armin Wolf wrote: > When support for Vivobook fan profiles was added, two mistakes where > made: > > 1. throttle_thermal_policy_set_default() was not called anymore during > probe. > > 2. The new thermal profiles where used inconsistently. > > This patch series aims to fix both issues. Compile-tested only. > > Armin Wolf (2): > platform/x86: asus-wmi: Fix thermal profile initialization > platform/x86: asus-wmi: Fix inconsistent use of thermal policies Taking another look at the vivobook stuff because of this series this pre-existing code stands out to me: static int fan_curve_get_factory_default(struct asus_wmi *asus, u32 fan_dev) { struct fan_curve_data *curves; u8 buf[FAN_CURVE_BUF_LEN]; int err, fan_idx; u8 mode = 0; if (asus->throttle_thermal_policy_dev) mode = asus->throttle_thermal_policy_mode; /* DEVID_<C/G>PU_FAN_CURVE is switched for OVERBOOST vs SILENT */ if (mode == 2) mode = 1; else if (mode == 1) mode = 2; Since the vivobook has silent and overboost swapped I wonder if we should do this on vivobook to ? Also note that patch 2/2 of this series impacts this code too. Until now we were storing the swapped vivobook values in asus->throttle_thermal_policy_dev and then here we are swapping them a second time, in essence using unswapped non vivobook values here due to the double swapping. Where as after Armin's changes from 2/2 we now store unswapped standard asus laptop values in asus->throttle_thermal_policy_dev and swap them here, using the same mode values as with normal asus laptops on vivobooks now ( mode is swapped from non vivo throttle_thermal_policy_dev values). Does anyone have any insight what we should do here ? Regards, Hans