Commit dbcfcb23 authored by Kurt Borja's avatar Kurt Borja Committed by Guenter Roeck
Browse files

hwmon: (dell-smm) Increment the number of fans



Some Alienware laptops that support the SMM interface, may have up to 4
fans.

Tested on an Alienware x15 r1.

Signed-off-by: default avatarKurt Borja <kuurtb@gmail.com>
Link: https://lore.kernel.org/r/20250304055249.51940-2-kuurtb@gmail.com


Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent 79536059
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -32,12 +32,12 @@ Temperature sensors and fans can be queried and set via the standard
=============================== ======= =======================================
Name				Perm	Description
=============================== ======= =======================================
fan[1-3]_input                  RO      Fan speed in RPM.
fan[1-3]_label                  RO      Fan label.
fan[1-3]_min                    RO      Minimal Fan speed in RPM
fan[1-3]_max                    RO      Maximal Fan speed in RPM
fan[1-3]_target                 RO      Expected Fan speed in RPM
pwm[1-3]                        RW      Control the fan PWM duty-cycle.
fan[1-4]_input                  RO      Fan speed in RPM.
fan[1-4]_label                  RO      Fan label.
fan[1-4]_min                    RO      Minimal Fan speed in RPM
fan[1-4]_max                    RO      Maximal Fan speed in RPM
fan[1-4]_target                 RO      Expected Fan speed in RPM
pwm[1-4]                        RW      Control the fan PWM duty-cycle.
pwm1_enable                     WO      Enable or disable automatic BIOS fan
                                        control (not supported on all laptops,
                                        see below for details).
@@ -93,7 +93,7 @@ Again, when you find new codes, we'd be happy to have your patches!
---------------------------

The driver also exports the fans as thermal cooling devices with
``type`` set to ``dell-smm-fan[1-3]``. This allows for easy fan control
``type`` set to ``dell-smm-fan[1-4]``. This allows for easy fan control
using one of the thermal governors.

Module parameters
+4 −1
Original line number Diff line number Diff line
@@ -73,7 +73,7 @@
#define DELL_SMM_LEGACY_EXECUTE	0x1

#define DELL_SMM_NO_TEMP	10
#define DELL_SMM_NO_FANS	3
#define DELL_SMM_NO_FANS	4

struct smm_regs {
	unsigned int eax;
@@ -1074,11 +1074,14 @@ static const struct hwmon_channel_info * const dell_smm_info[] = {
			   HWMON_F_INPUT | HWMON_F_LABEL | HWMON_F_MIN | HWMON_F_MAX |
			   HWMON_F_TARGET,
			   HWMON_F_INPUT | HWMON_F_LABEL | HWMON_F_MIN | HWMON_F_MAX |
			   HWMON_F_TARGET,
			   HWMON_F_INPUT | HWMON_F_LABEL | HWMON_F_MIN | HWMON_F_MAX |
			   HWMON_F_TARGET
			   ),
	HWMON_CHANNEL_INFO(pwm,
			   HWMON_PWM_INPUT | HWMON_PWM_ENABLE,
			   HWMON_PWM_INPUT,
			   HWMON_PWM_INPUT,
			   HWMON_PWM_INPUT
			   ),
	NULL