Message ID | 20231123004820.50635-1-W_Armin@gmx.de (mailing list archive) |
---|---|
Headers | show |
Series | hwmon: (dell-smm) Add support for WMI SMM interface | expand |
On Thursday 23 November 2023 01:48:11 Armin Wolf wrote: > This patch series adds support for an alternative SMM calling > backend to the dell-smm-hwmon driver. The reason for this is > that on some modern machines, the legacy SMM calling interface > does not work anymore and the SMM handler can be called over > ACPI WMI instead. > > The first four patches prepare the driver by allowing to > specify different SMM calling backends, and by moving most of > the DMI handling into i8k_init() so that the DMI tables can > keep their __initconst attributes (the WMI SMM backend driver > does not probe at module init time). The fifth patch does some > minor cleanup, while the next three patches implement the new > WMI SMM calling backend. The last patch adds the machine of > the user who requested and tested the changes to the fan control > whitelist. > > If the driver does not detect the legacy SMM interface, either > because the machine is not whitelisted or because the SMM handler > does not react, it registers an WMI driver which will then bound > to the WMI SMM interface and do the remaining initialization. > > The deprecated procfs interface is not supported when using the > WMI SMM calling backend for the following reason: the WMI driver > can potentially be instantiated multiple times while the deprectated > procfs interface cannot. This should not cause any regressions > because on machines supporting only the WMI SMM interface, the > driver would, until now, not load anyway. > > All patches where tested on a Dell Inspiron 3505 and a Dell > OptiPlex 7000. > > Changes since v3: > - Using unsigned integers for registers > - use TAB instead of space after comma > > Changes since v2: > - Rework WMI response parsing > - Use #define for method number > > Changes since v1: > - Cc platform driver maintainers > - Fix formating inside documentation > > Armin Wolf (9): > hwmon: (dell-smm) Prepare for multiple SMM calling backends > hwmon: (dell-smm) Move blacklist handling to module init > hwmon: (dell-smm) Move whitelist handling to module init > hwmon: (dell-smm) Move DMI config handling to module init > hwmon: (dell-smm) Move config entries out of i8k_dmi_table > hwmon: (dell-smm) Introduce helper function for data init > hwmon: (dell-smm) Add support for WMI SMM interface > hwmon: (dell-smm) Document the WMI SMM interface > hwmon: (dell-smm) Add Optiplex 7000 to fan control whitelist > > Documentation/hwmon/dell-smm-hwmon.rst | 38 +- > drivers/hwmon/Kconfig | 1 + > drivers/hwmon/dell-smm-hwmon.c | 604 +++++++++++++++++-------- > drivers/platform/x86/wmi.c | 1 + > 4 files changed, 454 insertions(+), 190 deletions(-) > > -- > 2.39.2 > For me it looks good, you can add for whole series: Reviewed-by: Pali Rohár <pali@kernel.org>
On 11/22/23 16:48, Armin Wolf wrote: > This patch series adds support for an alternative SMM calling > backend to the dell-smm-hwmon driver. The reason for this is > that on some modern machines, the legacy SMM calling interface > does not work anymore and the SMM handler can be called over > ACPI WMI instead. > > The first four patches prepare the driver by allowing to > specify different SMM calling backends, and by moving most of > the DMI handling into i8k_init() so that the DMI tables can > keep their __initconst attributes (the WMI SMM backend driver > does not probe at module init time). The fifth patch does some > minor cleanup, while the next three patches implement the new > WMI SMM calling backend. The last patch adds the machine of > the user who requested and tested the changes to the fan control > whitelist. > > If the driver does not detect the legacy SMM interface, either > because the machine is not whitelisted or because the SMM handler > does not react, it registers an WMI driver which will then bound > to the WMI SMM interface and do the remaining initialization. > > The deprecated procfs interface is not supported when using the > WMI SMM calling backend for the following reason: the WMI driver > can potentially be instantiated multiple times while the deprectated > procfs interface cannot. This should not cause any regressions > because on machines supporting only the WMI SMM interface, the > driver would, until now, not load anyway. > > All patches where tested on a Dell Inspiron 3505 and a Dell > OptiPlex 7000. > Series applied. Thanks, Guenter