diff options
author | Luke D. Jones <luke@ljones.dev> | 2021-10-24 16:37:05 +1300 |
---|---|---|
committer | Hans de Goede <hdegoede@redhat.com> | 2021-11-16 10:56:53 +0100 |
commit | 0f0ac158d28ff78e75c334e869b1cb8e69372a1f (patch) | |
tree | 7a7b07fc96337a8f9978e67e1640c319efec840b /drivers/platform/surface/aggregator/bus.c | |
parent | 79f960e29cfc87db324479ef982a3f97025328dc (diff) |
platform/x86: asus-wmi: Add support for custom fan curves
Add support for custom fan curves found on some ASUS ROG laptops.
These laptops have the ability to set a custom curve for the CPU
and GPU fans via two ACPI methods.
This patch adds two pwm<N> attributes to the hwmon sysfs,
pwm1 for CPU fan, pwm2 for GPU fan. Both are under the hwmon of the
name `asus_custom_fan_curve`. There is no safety check of the set
fan curves - this must be done in userspace.
The fans have settings [1,2,3] under pwm<N>_enable:
1. Enable and write settings out
2. Disable and use factory fan mode
3. Same as 2, additionally restoring default factory curve.
Use of 2 means that the curve the user has set is still stored and
won't be erased, but the laptop will be using its default auto-fan
mode. Re-enabling the manual mode then activates the curves again.
Notes:
- pwm<N>_enable = 0 is an invalid setting.
- pwm is actually a percentage and is scaled on writing to device.
Signed-off-by: Luke D. Jones <luke@ljones.dev>
Link: https://lore.kernel.org/r/20211024033705.5595-2-luke@ljones.dev
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'drivers/platform/surface/aggregator/bus.c')
0 files changed, 0 insertions, 0 deletions