[PATCH v5 0/9] Convert most Dell WMI drivers to use the new buffer-based API

Armin Wolf posted 9 patches 2 days, 7 hours ago
.../wmi/driver-development-guide.rst          |   2 +-
drivers/hwmon/dell-smm-hwmon.c                |  47 ++---
drivers/platform/wmi/core.c                   |  31 +--
drivers/platform/x86/dell/dell-smbios-wmi.c   |  40 ++--
drivers/platform/x86/dell/dell-wmi-base.c     |  70 +++----
drivers/platform/x86/dell/dell-wmi-ddv.c      | 181 +++++++++---------
.../platform/x86/dell/dell-wmi-descriptor.c   | 108 +++++------
drivers/platform/x86/dell/dell-wmi-privacy.c  |  77 ++++----
scripts/mod/file2alias.c                      |  28 ++-
9 files changed, 284 insertions(+), 300 deletions(-)
[PATCH v5 0/9] Convert most Dell WMI drivers to use the new buffer-based API
Posted by Armin Wolf 2 days, 7 hours ago
The new buffer-based WMI API improves the compatibility between
different ACPI firmware implementations by performing marshalling/
unmarshalling of WMI buffers like the original Windows driver.

Convert most Dell WMI drivers to use this new API. This also
removes all ACPI-related code from those drivers because the
new buffer-based WMI API uses abstract WMI buffer objects instead
of ACPI objects.

All drivers have been tested on a Dell Inspiron 3505 and appear
to work normally.

The last three patches contain some misc. cleanups for the WMI
driver core itself. The most important change is a fix for modprobe
to verify any WMI GUID strings from WMI drivers and convert them
to uppercase if necessary. This should fix autoloading for WMI
drivers that use WMI GUID strings with lowercase letters.

The whole series should be applied on the platform drivers tree.

Changes since v4:
- fix issues found by Sashiko review

Changes since v3:
- rework patches to work with the revised WMI API
- use __free() for cleanup
- add missing includes

Changes since v2:
- add Acked-by tag from Guenter
- rework buffer parsing in dell-wmi-descriptor as suggested by Gergo

Changes since v1:
- do not perform pointer arithmetic on void pointers in dell-smm-hwmon

Armin Wolf (9):
  platform/x86: dell-descriptor: Use new buffer-based WMI API
  platform/x86: dell-privacy: Use new buffer-based WMI API
  platform/x86: dell-smbios-wmi: Use new buffer-based WMI API
  platform/x86: dell-wmi-base: Use new buffer-based WMI API
  platform/x86: dell-ddv: Use new buffer-based WMI API
  hwmon: (dell-smm) Use new buffer-based WMI API
  platform/wmi: Make wmi_bus_class const
  platform/wmi: Make sysfs attributes const
  modpost: Handle malformed WMI GUID strings

 .../wmi/driver-development-guide.rst          |   2 +-
 drivers/hwmon/dell-smm-hwmon.c                |  47 ++---
 drivers/platform/wmi/core.c                   |  31 +--
 drivers/platform/x86/dell/dell-smbios-wmi.c   |  40 ++--
 drivers/platform/x86/dell/dell-wmi-base.c     |  70 +++----
 drivers/platform/x86/dell/dell-wmi-ddv.c      | 181 +++++++++---------
 .../platform/x86/dell/dell-wmi-descriptor.c   | 108 +++++------
 drivers/platform/x86/dell/dell-wmi-privacy.c  |  77 ++++----
 scripts/mod/file2alias.c                      |  28 ++-
 9 files changed, 284 insertions(+), 300 deletions(-)

-- 
2.39.5