linux/drivers/platform/x86
Linus Torvalds da6b5aae84 platform-drivers-x86 for v7.1-1
Highlights:
 
 - asus-wmi:
   - Retain battery charge threshold during boot which avoids unsolicited
     change to 100%. Return -ENODATA when the limit is not yet known
   - Improve screenpad power/brightness handling consistency
   - Fix screenpad brightness range
 
 - barco-p50-gpio: Normalize gpio_get return values
 
 - bitland-mifs-wmi: Add driver for Bitland laptops (supports platform
                     profile,hwmon, kbd backlight, gpu mode, hotkeys, and
                     fan boost)
 
 - dell_rbu: Fix using uninitialized value in sysfs write function
 
 - dell-wmi-sysman: Respect destination length when constructing enum
                    strings
 
 - hp-wmi:
   - Propagate fan setting apply failures and log an error
   - Fix sysfs write vs work handler cancel_delayed_work_sync() deadlock
   - Correct keepalive schedule_delayed_work() to mod_delayed_work()
   - Fix u8 underflows in GPU delta calculation
   - Use mutex to protect fan pwm/mode
   - Ignore kbd backlight and FnLock key events that are handled by FW
   - Fix fan table parsing (use correct field)
   - Add support for Omen 14-fb0xxx, 16-n0xxx, 16-wf1xxx, and Omen MAX
     16-ak0xxxx
 
 - input: trackpoint & thinkpad_acpi: Enable doubletap by default and
                                      add sysfs enable/disable
 
 - int3472: Add support for GPIO type 0x02 (IR flood LED)
 
 - intel-speed-select: (updated to v1.26)
   - Avoid using current base frequency as maximum
   - Fix CPU extended family ID decoding
   - Fix exit code
   - Improve error reporting
 
 - intel/vsec: Refactor to support ACPI-enumerated PMT endpoints.
 
 - pcengines-apuv2: Attach software node to the gpiochip
 
 - uniwill:
   - Refactor hwmon to smaller parts to accomodate HW diversity
   - Support USB-C power/performance priority switch through sysfs
   - Add another XMG Fusion 15 (L19) DMI vendor
   - Enable fine-grained features to device lineup mapping
 
 - wmi: Perform output size check within WMI core to allow simpler WMI
        drivers
 
 - acpi_driver -> platform driver conversions (a large number of changes
   from Rafael J. Wysocki)
 
 - Miscellaneous cleanups / refactoring / improvements
 
 The following is an automated shortlog grouped by driver:
 
 acer-wireless:
  -  Convert ACPI driver to a platform one
  -  Register ACPI notify handler directly
 
 asus-laptop:
  -  Convert ACPI driver to a platform one
  -  Register ACPI notify handler directly
 
 asus-wireless:
  -  Convert ACPI driver to a platform one
  -  Register ACPI notify handler directly
 
 asus-wmi:
  -  adjust screenpad power/brightness handling
  -  do not enforce a battery charge threshold
  -  fix screenpad brightness range
 
 barco-p50-gpio:
  -  convert to guard() notation
  -  normalize return value of gpio_get
 
 bitland-mifs-wmi:
  -  Add new Bitland MIFS WMI driver
 
 dell/dell-rbtn:
  -  Convert ACPI driver to a platform one
  -  Register ACPI notify handler directly
 
 dell_rbu:
  -  avoid uninit value usage in packet_size_write()
 
 dell-wmi-sysman:
  -  bound enumeration string aggregation
  -  Clean up security buffer helpers
  -  Fix typo in function comment
  -  Use standard kobj_sysfs_ops
  -  Use sysfs_emit{_at} in show functions
 
 Documentation: laptops:
  -  Update documentation for uniwill laptops
 
 Documentation:
  -  thinkpad-acpi - Document doubletap_enable attribute
 
 eeepc-laptop:
  -  Convert ACPI driver to a platform one
  -  Register ACPI notify handler directly
 
 fujitsu:
  -  Convert backlight driver to a platform one
  -  Convert laptop driver to a platform one
  -  Register ACPI notify handlers directly
  -  Reorder code to avoid forward declarations
 
 fujitsu-tablet:
  -  Convert ACPI driver to a platform one
 
 hp-wmi:
  -  add locking for concurrent hwmon access
  -  add Omen 14-fb0xxx (board 8C58) support
  -  Add support for Omen 16-n0xxx (8A44)
  -  Add support for Omen 16-wf1xxx (8C77)
  -  Add support for OMEN MAX 16-ak0xxx (8D87)
  -  avoid cancel_delayed_work_sync from work handler
  -  fix fan table parsing
  -  fix ignored return values in fan settings
  -  fix u8 underflow in gpu_delta calculation
  -  Ignore backlight and FnLock events
  -  use mod_delayed_work to reset keep-alive timer
 
 input:
  -  trackpoint - Enable doubletap by default on capable devices
 
 int3472:
  -  Add support for GPIO type 0x02 (IR flood LED)
  -  Parameterize LED con_id in registration
  -  Rename pled to led in LED registration code
  -  Use local variable for LED struct access
 
 intel/rst:
  -  Convert ACPI driver to a platform one
 
 intel/smartconnect:
  -  Convert ACPI driver to a platform one
 
 intel/tpmi:
  -  Use 32 bit aligned address for debugfs mem write
 
 intel/vsec:
  -  Decouple add/link helpers from PCI
  -  Make driver_data info const
  -  Plumb ACPI PMT discovery tables through vsec
  -  Refactor base_addr handling
  -  Return real error codes from registration path
  -  Switch exported helpers from pci_dev to device
 
 lg-laptop:
  -  Convert ACPI driver to a platform one
  -  Drop debug-only ACPI notify handler
 
 nvsw-sn2201:
  -  Drop unused include
 
 panasonic-laptop:
  -  Convert ACPI driver to a platform one
  -  Fix OPTD notifier registration and cleanup
  -  Make pcc_register_optd_notifier() void
  -  Register ACPI notify handler directly
  -  Remove redundant checks from 3 functions
 
 pcengines-apuv2:
  -  attach software node to the gpiochip
 
 sony-laptop:
  -  Convert NC driver to a platform one
  -  Convert PIC driver to a platform one
  -  Register ACPI notify handler directly
 
 surface: hotplug:
  -  Correct inclusion for GPIO APIs
 
 surface: surfacepro3_button:
  -  Convert to a platform driver
  -  Drop wakeup source on remove
  -  Register ACPI notify handler
 
 system76:
  -  Convert ACPI driver to a platform one
  -  Drop redundant devm_led_classdev_unregister()
  -  Register ACPI notify handler directly
 
 thinkpad_acpi:
  -  Add sysfs control for TrackPoint double-tap
  -  Drop ACPI driver registration
  -  remove obsolete TODO comment
  -  use seq_puts() instead of seq_printf()
 
 tools/power/x86/intel-speed-select:
  -  Avoid current base freq as maximum
  -  Fix cpu extended family ID decoding
  -  Fix output when running on unsupported CLX platforms
  -  Fix some program return value
  -  Print Version info when Incompatible API version is detected
  -  v1.26 release
 
 topstar-laptop:
  -  Convert ACPI driver to a platform one
  -  Register ACPI notify handler directly
 
 toshiba_acpi:
  -  Convert ACPI driver to a platform one
  -  Register ACPI notify handler directly
  -  Reorder code to avoid forward declaration
 
 toshiba_bluetooth:
  -  Convert ACPI driver to a platform one
  -  Register ACPI notify handler directly
 
 toshiba_haps:
  -  Convert ACPI driver to a platform one
  -  Register ACPI notify handler directly
 
 uniwill-laptop:
  -  Apply features across all TUXEDO devices
  -  Fix signedness bug
  -  Fix XMG Fusion 15 (L19) entries
  -  Implement USB-C power priority setting
  -  Rework hwmon feature defines
 
 wireless-hotkey:
  -  Convert ACPI driver to a platform one
  -  Register ACPI notify handler directly
 
 wmi:
  -  Add wmidev_invoke_procedure()
  -  Convert drivers to use wmidev_invoke_procedure()
  -  Extend wmidev_invoke_method() to reject undersized data
  -  Extend wmidev_query_block() to reject undersized data
  -  Prepare to reject undersized unmarshalling results
  -  Replace .no_notify_data with .min_event_size
 
 x86:
  -  remove unnecessary module_init/exit() functions
 
 Merges:
  -  Merge branch 'intel-sst' of https://github.com/spandruvada/linux-kernel into review-ilpo-next
  -  Merge tag 'fixes' into 'for-next'
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQSCSUwRdwTNL2MhaBlZrE9hU+XOMQUCaeYxSwAKCRBZrE9hU+XO
 MRzTAQCPUKVOpSY/cjtPXVBn0uJbAo1MSvytv00Kv7dcatvrrwEA9lqmwOfl0kzr
 CowEVVCD3om++W9vOsL65hachbAl1QA=
 =1qkw
 -----END PGP SIGNATURE-----

Merge tag 'platform-drivers-x86-v7.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86

Pull x86 platform driver updates from Ilpo Järvinen:
 "asus-wmi:
   - Retain battery charge threshold during boot which avoids
     unsolicited change to 100%. Return -ENODATA when the limit
     is not yet known
   - Improve screenpad power/brightness handling consistency
   - Fix screenpad brightness range

  barco-p50-gpio:
   - Normalize gpio_get return values

  bitland-mifs-wmi:
   - Add driver for Bitland laptops (supports platform profile,
     hwmon, kbd backlight, gpu mode, hotkeys, and fan boost)

  dell_rbu:
   - Fix using uninitialized value in sysfs write function

  dell-wmi-sysman:
   - Respect destination length when constructing enum strings

  hp-wmi:
   - Propagate fan setting apply failures and log an error
   - Fix sysfs write vs work handler cancel_delayed_work_sync() deadlock
   - Correct keepalive schedule_delayed_work() to mod_delayed_work()
   - Fix u8 underflows in GPU delta calculation
   - Use mutex to protect fan pwm/mode
   - Ignore kbd backlight and FnLock key events that are handled by FW
   - Fix fan table parsing (use correct field)
   - Add support for Omen 14-fb0xxx, 16-n0xxx, 16-wf1xxx, and
     Omen MAX 16-ak0xxxx

  input: trackpoint & thinkpad_acpi:
   - Enable doubletap by default and add sysfs enable/disable

  int3472:
   - Add support for GPIO type 0x02 (IR flood LED)

  intel-speed-select: (updated to v1.26)
   - Avoid using current base frequency as maximum
   - Fix CPU extended family ID decoding
   - Fix exit code
   - Improve error reporting

  intel/vsec:
   - Refactor to support ACPI-enumerated PMT endpoints.

  pcengines-apuv2:
   - Attach software node to the gpiochip

  uniwill:
   - Refactor hwmon to smaller parts to accomodate HW diversity
   - Support USB-C power/performance priority switch through sysfs
   - Add another XMG Fusion 15 (L19) DMI vendor
   - Enable fine-grained features to device lineup mapping

  wmi:
   - Perform output size check within WMI core to allow simpler WMI
     drivers

  misc:
   - acpi_driver -> platform driver conversions (a large number of
     changes from Rafael J. Wysocki)
   - cleanups / refactoring / improvements"

* tag 'platform-drivers-x86-v7.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: (106 commits)
  platform/x86: hp-wmi: Add support for Omen 16-wf1xxx (8C77)
  platform/x86: hp-wmi: Add support for Omen 16-n0xxx (8A44)
  platform/x86: hp-wmi: Add support for OMEN MAX 16-ak0xxx (8D87)
  platform/x86: hp-wmi: fix fan table parsing
  platform/x86: hp-wmi: add Omen 14-fb0xxx (board 8C58) support
  platform/wmi: Replace .no_notify_data with .min_event_size
  platform/wmi: Extend wmidev_query_block() to reject undersized data
  platform/wmi: Extend wmidev_invoke_method() to reject undersized data
  platform/wmi: Prepare to reject undersized unmarshalling results
  platform/wmi: Convert drivers to use wmidev_invoke_procedure()
  platform/wmi: Add wmidev_invoke_procedure()
  platform/x86: int3472: Add support for GPIO type 0x02 (IR flood LED)
  platform/x86: int3472: Parameterize LED con_id in registration
  platform/x86: int3472: Rename pled to led in LED registration code
  platform/x86: int3472: Use local variable for LED struct access
  platform/x86: thinkpad_acpi: remove obsolete TODO comment
  platform/x86: dell-wmi-sysman: bound enumeration string aggregation
  platform/x86: hp-wmi: Ignore backlight and FnLock events
  platform/x86: uniwill-laptop: Fix signedness bug
  platform/x86: dell_rbu: avoid uninit value usage in packet_size_write()
  ...
2026-04-20 12:02:24 -07:00
..
amd platform/x86/amd: pmc: Add Thinkpad L14 Gen3 to quirk_s2idle_bug 2026-03-27 13:31:15 +02:00
dell platform/wmi: Replace .no_notify_data with .min_event_size 2026-04-13 14:11:27 +03:00
hp platform-drivers-x86 for v7.1-1 2026-04-20 12:02:24 -07:00
intel platform-drivers-x86 for v7.1-1 2026-04-20 12:02:24 -07:00
lenovo platform-drivers-x86 for v7.1-1 2026-04-20 12:02:24 -07:00
siemens
tuxedo platform/x86/tuxedo: Prevent invalid Kconfig state 2025-05-14 13:01:28 +03:00
uniwill platform/wmi: Replace .no_notify_data with .min_event_size 2026-04-13 14:11:27 +03:00
x86-android-tablets Convert more 'alloc_obj' cases to default GFP_KERNEL arguments 2026-02-21 20:03:00 -08:00
acer-wireless.c platform/x86: acer-wireless: Convert ACPI driver to a platform one 2026-03-09 15:09:01 +02:00
acer-wmi.c platform/x86: acer-wmi: Fix missing capability check 2026-01-20 17:10:56 +02:00
acerhdf.c thermal/drivers/acerhdf: Constify struct thermal_zone_device_ops 2025-05-26 15:31:27 +03:00
adv_swbutton.c
amilo-rfkill.c
apple-gmux.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
asus-armoury.c Convert more 'alloc_obj' cases to default GFP_KERNEL arguments 2026-02-21 20:03:00 -08:00
asus-armoury.h platform/x86: asus-armoury: add support for GU605MU 2026-03-31 17:22:28 +03:00
asus-laptop.c platform/x86: asus-laptop: Convert ACPI driver to a platform one 2026-04-07 12:41:41 +03:00
asus-nb-wmi.c platform/x86: asus-nb-wmi: add DMI quirk for ASUS ROG Flow Z13-KJP GZ302EAC 2026-03-23 14:49:03 +02:00
asus-tf103c-dock.c
asus-wireless.c platform/x86: asus-wireless: Convert ACPI driver to a platform one 2026-04-07 12:41:44 +03:00
asus-wmi.c platform/x86: asus-wmi: fix screenpad brightness range 2026-03-31 16:00:55 +03:00
asus-wmi.h platform/x86: asus-wmi: Fix ROG button mapping, tablet mode on ASUS ROG Z13 2025-08-25 14:13:55 +03:00
ayaneo-ec.c platform/x86: ayaneo-ec: Add suspend hook 2025-11-21 17:36:22 +02:00
barco-p50-gpio.c platform/x86: barco-p50-gpio: convert to guard() notation 2026-03-23 12:12:05 +02:00
bitland-mifs-wmi.c platform/wmi: Replace .no_notify_data with .min_event_size 2026-04-13 14:11:27 +03:00
classmate-laptop.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
compal-laptop.c
dasharo-acpi.c
dual_accel_detect.h
eeepc-laptop.c platform/x86: eeepc-laptop: Convert ACPI driver to a platform one 2026-03-09 15:29:59 +02:00
eeepc-wmi.c
firmware_attributes_class.c
firmware_attributes_class.h
fujitsu-laptop.c platform/x86: fujitsu: Convert laptop driver to a platform one 2026-03-18 14:06:06 +02:00
fujitsu-tablet.c platform/x86: fujitsu-tablet: Convert ACPI driver to a platform one 2026-03-18 14:05:59 +02:00
gigabyte-wmi.c
gpd-pocket-fan.c platform: x86: replace use of system_wq with system_percpu_wq 2025-11-28 12:07:00 +02:00
hdaps.c
huawei-wmi.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
ibm_rtl.c platform/x86: ibm_rtl: fix EBDA signature search pointer arithmetic 2025-12-22 16:19:19 +02:00
inspur_platform_profile.c
intel_ips.c treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
intel_ips.h
intel_scu_ipc.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
intel_scu_ipcutil.c
intel_scu_pcidrv.c
intel_scu_pltdrv.c
intel_scu_wdt.c
Kconfig platform/x86: bitland-mifs-wmi: Add new Bitland MIFS WMI driver 2026-03-24 15:03:09 +02:00
lg-laptop.c platform/x86: lg-laptop: Convert ACPI driver to a platform one 2026-03-17 19:20:46 +02:00
Makefile platform/x86: bitland-mifs-wmi: Add new Bitland MIFS WMI driver 2026-03-24 15:03:09 +02:00
meegopad_anx7428.c
meraki-mx100.c platform/x86: meraki-mx100: Use static device properties 2025-09-26 14:26:46 +03:00
msi-ec.c
msi-ec.h
msi-laptop.c platform/x86: msi-laptop: add missing sysfs_remove_group() 2025-12-22 16:17:49 +02:00
msi-wmi-platform.c platform/x86: msi-wmi-platform: Fix typo in WMI GUID 2025-11-10 19:13:29 +02:00
msi-wmi.c
mxm-wmi.c platform: x86: remove unnecessary module_init/exit() functions 2026-03-02 15:30:46 +02:00
nvidia-wmi-ec-backlight.c
oxpec.c platform/x86: oxpec: Add support for Aokzoe A2 Pro 2026-02-27 13:09:47 +02:00
p2sb.c
panasonic-laptop.c platform/x86: panasonic-laptop: Convert ACPI driver to a platform one 2026-03-23 11:33:59 +02:00
pcengines-apuv2.c platform/x86: pcengines-apuv2: attach software node to the gpiochip 2026-03-02 18:27:22 +02:00
pmc_atom.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
portwell-ec.c platform/x86: portwell-ec: Add hwmon support for voltage and temperature 2025-09-16 12:26:39 +03:00
quickstart.c platform/x86: quickstart: Use devm_mutex_init() 2025-09-08 13:13:41 +03:00
redmi-wmi.c platform/wmi: Replace .no_notify_data with .min_event_size 2026-04-13 14:11:27 +03:00
samsung-galaxybook.c platform/x86: samsung-galaxybook: Fix problematic pointer cast 2025-12-29 12:55:50 +02:00
samsung-laptop.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
samsung-q10.c
sel3350-platform.c
serdev_helpers.h
serial-multi-instantiate.c platform/x86: serial-multi-instantiate: Add IRQ_RESOURCE_OPT for IRQ missing projects 2025-11-27 11:50:57 +02:00
silicom-platform.c treewide: rename GPIO set callbacks back to their original names 2025-08-07 10:07:06 +02:00
sony-laptop.c platform/x86: sony-laptop: Convert PIC driver to a platform one 2026-03-17 19:40:02 +02:00
system76_acpi.c platform/x86: system76: Convert ACPI driver to a platform one 2026-03-23 11:37:18 +02:00
topstar-laptop.c platform/x86: topstar-laptop: Convert ACPI driver to a platform one 2026-03-17 19:50:10 +02:00
toshiba_acpi.c platform/x86: toshiba_acpi: Convert ACPI driver to a platform one 2026-03-31 19:14:27 +03:00
toshiba_bluetooth.c platform/x86: toshiba_bluetooth: Convert ACPI driver to a platform one 2026-03-31 19:14:31 +03:00
toshiba_haps.c platform/x86: toshiba_haps: Convert ACPI driver to a platform one 2026-03-31 19:14:35 +03:00
toshiba-wmi.c
touchscreen_dmi.c platform/x86: touchscreen_dmi: Add quirk for y-inverted Goodix touchscreen on SUPI S10 2026-02-23 16:27:22 +02:00
uv_sysfs.c Convert remaining multi-line kmalloc_obj/flex GFP_KERNEL uses 2026-02-22 08:26:33 -08:00
winmate-fm07-keys.c
wireless-hotkey.c platform/x86: wireless-hotkey: Convert ACPI driver to a platform one 2026-03-17 19:51:49 +02:00
wmi-bmof.c platform/wmi: Extend wmidev_query_block() to reject undersized data 2026-04-13 14:11:25 +03:00
xiaomi-wmi.c platform/wmi: Replace .no_notify_data with .min_event_size 2026-04-13 14:11:27 +03:00
xo1-rfkill.c
xo15-ebook.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00