Hi Linus, Here is the main PDx86 PR for v6.11. Highlights: - amd/pmf: Report system state changes using existing input events - asus-wmi: Zenbook 2023 camera LED disable support and fix TUF laptop keyboard RGB LED sysfs interface - dell-pc: Fan modes / platform profile support - hp-wmi: Fix platform profile switching on Omen/Victus laptops - intel/ISST: Use only TPMI interface when TPMI and legacy interfaces are available - intel/pmc: LTR restore support to pair with LTR ignore - intel/tpmi: Performance Limit Reasons (PLR) and APIC <-> Punit CPU numbering mapping support - WMI: driver override support and docs improvements - lenovo-yoga-c630: Support for EC (platform/arm64) - platform/arm64: Fix build with COMPILE_TEST (broke after addition of C630) - tools: Intel Speed Select Turbo Ratio Limit fix - Miscellaneous cleanups / refactoring / improvements Regards, i. The following changes since commit 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0: Linux 6.10-rc1 (2024-05-26 15:20:12 -0700) are available in the Git repository at: https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git tags/platform-drivers-x86-v6.11-1 for you to fetch changes up to d8b17a364ec48239fccb65efe74bb485e79e6743: platform/x86: asus-wmi: fix TUF laptop RGB variant (2024-07-16 12:49:09 +0300) ---------------------------------------------------------------- platform-drivers-x86 for v6.11-1 Highlights: - amd/pmf: Report system state changes using existing input events - asus-wmi: Zenbook 2023 camera LED disable support and fix TUF laptop keyboard RGB LED sysfs interface - dell-pc: Fan modes / platform profile support - hp-wmi: Fix platform profile switching on Omen/Victus laptops - intel/ISST: Use only TPMI interface when TPMI and legacy interfaces are available - intel/pmc: LTR restore support to pair with LTR ignore - intel/tpmi: Performance Limit Reasons (PLR) and APIC <-> Punit CPU numbering mapping support - WMI: driver override support and docs improvements - lenovo-yoga-c630: Support for EC (platform/arm64) - platform/arm64: Fix build with COMPILE_TEST (broke after addition of C630) - tools: Intel Speed Select Turbo Ratio Limit fix - Miscellaneous cleanups / refactoring / improvements The following is an automated shortlog grouped by driver: amd/pmf: - Remove update system state document - Use existing input event codes to update system states - Use memdup_user() arm64: - add Lenovo Yoga C630 WOS EC driver - build drivers even on non-ARM64 platforms - EC_ACER_ASPIRE1 should depend on ARCH_QCOM - EC_LENOVO_YOGA_C630 should depend on ARCH_QCOM arm64: lenovo-yoga-c630: - select AUXILIARY_BUS asus-tf103c-dock: - Use 2-argument strscpy() asus-wmi: - fix TUF laptop RGB variant - support the disable camera LED on F10 of Zenbook 2023 dell-pc: - avoid double free and invalid unregistration - Implement platform_profile dell-smbios: - Add helper for checking supported class - Move request functions for reuse Docs/admin-guide: - Remove pmf leftover reference from the index doc: TPMI: - Add entry for Performance Limit Reasons dt-bindings: platform: - Add Lenovo Yoga C630 EC hp: hp-bioscfg: - Use 2-argument strscpy() hp-wmi: - Fix implementation of the platform_profile_omen_get function - Fix platform profile option switch bug on Omen and Victus laptops ideapad-laptop: - use cleanup.h intel: chtwc_int33fe: - Use 2-argument strscpy() intel/ifs: - Switch to new Intel CPU model defines intel_ips: - Switch to new Intel CPU model defines intel/pmc: - Add support to show ltr_ignore value - Add support to undo ltr_ignore - Convert index variables to be unsigned - Move pmc assignment closer to first usage - Remove unneeded min_t check - Simplify mutex usage with cleanup helpers - Switch to new Intel CPU model defines - Use DEFINE_SHOW_STORE_ATTRIBUTE macro - Use the Elvis operator - Use the return value of pmc_core_send_msg intel_scu_wdt: - Switch to new Intel CPU model defines intel_speed_select_if: - Switch to new Intel CPU model defines intel_telemetry: - Switch to new Intel CPU model defines intel/tpmi: - Add API to get debugfs root - Add new auxiliary driver for performance limits - Add support for performance limit reasons intel: - TPMI domain id and CPU mapping intel/tpmi/plr: - Add support for the plr mailbox - Fix output in plr_print_bits() intel_turbo_max_3: - Switch to new Intel CPU model defines intel-uncore-freq: - Get rid of magic min_max argument - Get rid of magic values - Get rid of uncore_read_freq driver API - Re-arrange bit masks - Rename the sysfs helper macro names - Switch to new Intel CPU model defines - Use generic helpers for current frequency - Use uncore_index with read_control_freq ISST: - Add model specific loading for common module - Avoid some SkyLake server models - Use only TPMI interface when present p2sb: - Switch to new Intel CPU model defines serial-multi-instantiate: - Use 2-argument strscpy() think-lmi: - Use 2-argument strscpy() thinkpad_acpi: - Use 2-argument strscpy() tools/power/x86/intel-speed-select: - Set TRL MSR in 100 MHz units - v1.20 release wmi: - Add bus ABI documentation - Add driver_override support x86/platform/atom: - Switch to new Intel CPU model defines Merges: - Merge branch 'pdx86/platform-drivers-x86-lenovo-c630' into review-ilpo - Merge branch 'pdx86/platform-drivers-x86-lenovo-c630' into review-ilpo - Merge branch 'pdx86/platform-drivers-x86-lenovo-c630' into review-ilpo - Merge remote-tracking branch 'intel-speed-select/intel-sst' into review-ilpo ---------------------------------------------------------------- Alexis Belmonte (2): platform/x86: hp-wmi: Fix platform profile option switch bug on Omen and Victus laptops platform/x86: hp-wmi: Fix implementation of the platform_profile_omen_get function Andy Shevchenko (6): platform/x86: asus-tf103c-dock: Use 2-argument strscpy() platform/x86: hp: hp-bioscfg: Use 2-argument strscpy() platform/x86: intel: chtwc_int33fe: Use 2-argument strscpy() platform/x86: serial-multi-instantiate: Use 2-argument strscpy() platform/x86: think-lmi: Use 2-argument strscpy() platform/x86: thinkpad_acpi: Use 2-argument strscpy() Armin Wolf (2): platform/x86: wmi: Add driver_override support platform/x86: wmi: Add bus ABI documentation Bjorn Andersson (1): dt-bindings: platform: Add Lenovo Yoga C630 EC Dan Carpenter (1): platform/x86/intel/tpmi/plr: Fix output in plr_print_bits() Devin Bayer (1): platform/x86: asus-wmi: support the disable camera LED on F10 of Zenbook 2023 Dmitry Baryshkov (3): platform: arm64: add Lenovo Yoga C630 WOS EC driver platform/arm64: build drivers even on non-ARM64 platforms platform: arm64: lenovo-yoga-c630: select AUXILIARY_BUS Geert Uytterhoeven (2): platform: arm64: EC_ACER_ASPIRE1 should depend on ARCH_QCOM platform: arm64: EC_LENOVO_YOGA_C630 should depend on ARCH_QCOM Gergo Koteles (1): platform/x86: ideapad-laptop: use cleanup.h Ilpo Järvinen (5): Merge branch 'pdx86/platform-drivers-x86-lenovo-c630' into review-ilpo Merge branch 'pdx86/platform-drivers-x86-lenovo-c630' into review-ilpo Merge branch 'pdx86/platform-drivers-x86-lenovo-c630' into review-ilpo Merge remote-tracking branch 'intel-speed-select/intel-sst' into review-ilpo Docs/admin-guide: Remove pmf leftover reference from the index Luke D. Jones (1): platform/x86: asus-wmi: fix TUF laptop RGB variant Lyndon Sanche (3): platform/x86: dell-smbios: Add helper for checking supported class platform/x86: dell-smbios: Move request functions for reuse platform/x86: dell-pc: Implement platform_profile Shyam Sundar S K (2): platform/x86/amd/pmf: Use existing input event codes to update system states platform/x86/amd/pmf: Remove update system state document Srinivas Pandruvada (6): platform/x86: ISST: Add model specific loading for common module platform/x86: ISST: Avoid some SkyLake server models platform/x86: ISST: Use only TPMI interface when present platform/x86/intel: TPMI domain id and CPU mapping tools/power/x86/intel-speed-select: Set TRL MSR in 100 MHz units tools/power/x86/intel-speed-select: v1.20 release Tero Kristo (12): platform/x86/intel/tpmi: Add support for performance limit reasons platform/x86/intel/tpmi: Add API to get debugfs root platform/x86/intel/tpmi: Add new auxiliary driver for performance limits platform/x86/intel/tpmi/plr: Add support for the plr mailbox doc: TPMI: Add entry for Performance Limit Reasons platform/x86/intel-uncore-freq: Re-arrange bit masks platform/x86/intel-uncore-freq: Get rid of magic values platform/x86/intel-uncore-freq: Get rid of magic min_max argument platform/x86/intel-uncore-freq: Use uncore_index with read_control_freq platform/x86/intel-uncore-freq: Get rid of uncore_read_freq driver API platform/x86/intel-uncore-freq: Rename the sysfs helper macro names platform/x86/intel-uncore-freq: Use generic helpers for current frequency Thomas Weißschuh (1): platform/x86: dell-pc: avoid double free and invalid unregistration Thorsten Blum (1): platform/x86/amd/pmf: Use memdup_user() Tony Luck (10): platform/x86/intel/pmc: Switch to new Intel CPU model defines platform/x86: intel_telemetry: Switch to new Intel CPU model defines x86/platform/atom: Switch to new Intel CPU model defines platform/x86: p2sb: Switch to new Intel CPU model defines platform/x86: intel_turbo_max_3: Switch to new Intel CPU model defines platform/x86: intel_ips: Switch to new Intel CPU model defines platform/x86: intel-uncore-freq: Switch to new Intel CPU model defines platform/x86: intel_speed_select_if: Switch to new Intel CPU model defines platform/x86: intel_scu_wdt: Switch to new Intel CPU model defines platform/x86/intel/ifs: Switch to new Intel CPU model defines Xi Pardee (9): platform/x86:intel/pmc: Use the return value of pmc_core_send_msg platform/x86:intel/pmc: Simplify mutex usage with cleanup helpers platform/x86:intel/pmc: Convert index variables to be unsigned platform/x86:intel/pmc: Move pmc assignment closer to first usage platform/x86:intel/pmc: Add support to show ltr_ignore value platform/x86:intel/pmc: Remove unneeded min_t check platform/x86:intel/pmc: Use DEFINE_SHOW_STORE_ATTRIBUTE macro platform/x86:intel/pmc: Use the Elvis operator platform/x86:intel/pmc: Add support to undo ltr_ignore Documentation/ABI/testing/debugfs-tpmi | 9 + Documentation/ABI/testing/sysfs-bus-wmi | 81 +++++ Documentation/admin-guide/index.rst | 1 - Documentation/admin-guide/pmf.rst | 24 -- .../bindings/platform/lenovo,yoga-c630-ec.yaml | 83 +++++ MAINTAINERS | 7 + arch/x86/platform/atom/punit_atom_debug.c | 11 +- drivers/platform/Makefile | 2 +- drivers/platform/arm64/Kconfig | 17 + drivers/platform/arm64/Makefile | 1 + drivers/platform/arm64/lenovo-yoga-c630.c | 291 +++++++++++++++++ drivers/platform/x86/amd/pmf/pmf.h | 2 + drivers/platform/x86/amd/pmf/tee-if.c | 73 +++-- drivers/platform/x86/asus-tf103c-dock.c | 10 +- drivers/platform/x86/asus-wmi.c | 41 ++- drivers/platform/x86/dell/Kconfig | 13 + drivers/platform/x86/dell/Makefile | 1 + drivers/platform/x86/dell/dell-laptop.c | 23 -- drivers/platform/x86/dell/dell-pc.c | 309 ++++++++++++++++++ drivers/platform/x86/dell/dell-smbios-base.c | 35 ++ drivers/platform/x86/dell/dell-smbios.h | 7 + drivers/platform/x86/hp/Kconfig | 1 + .../platform/x86/hp/hp-bioscfg/enum-attributes.c | 18 +- .../platform/x86/hp/hp-bioscfg/int-attributes.c | 7 +- .../x86/hp/hp-bioscfg/order-list-attributes.c | 18 +- .../x86/hp/hp-bioscfg/passwdobj-attributes.c | 19 +- .../platform/x86/hp/hp-bioscfg/spmobj-attributes.c | 3 +- .../platform/x86/hp/hp-bioscfg/string-attributes.c | 12 +- drivers/platform/x86/hp/hp-wmi.c | 188 ++++++++++- drivers/platform/x86/ideapad-laptop.c | 71 ++--- drivers/platform/x86/intel/Kconfig | 11 + drivers/platform/x86/intel/Makefile | 4 + drivers/platform/x86/intel/chtwc_int33fe.c | 6 +- drivers/platform/x86/intel/ifs/core.c | 15 +- drivers/platform/x86/intel/intel_plr_tpmi.c | 354 +++++++++++++++++++++ drivers/platform/x86/intel/pmc/core.c | 262 +++++++-------- drivers/platform/x86/intel/pmc/pltdrv.c | 16 +- .../x86/intel/speed_select_if/isst_if_common.c | 75 +++-- .../x86/intel/speed_select_if/isst_if_common.h | 3 + .../x86/intel/speed_select_if/isst_if_mbox_msr.c | 4 +- drivers/platform/x86/intel/telemetry/debugfs.c | 4 +- drivers/platform/x86/intel/telemetry/pltdrv.c | 4 +- drivers/platform/x86/intel/tpmi.c | 11 + drivers/platform/x86/intel/tpmi_power_domains.c | 235 ++++++++++++++ drivers/platform/x86/intel/tpmi_power_domains.h | 18 ++ drivers/platform/x86/intel/turbo_max_3.c | 4 +- .../uncore-frequency/uncore-frequency-common.c | 83 ++--- .../uncore-frequency/uncore-frequency-common.h | 13 +- .../intel/uncore-frequency/uncore-frequency-tpmi.c | 101 ++++-- .../x86/intel/uncore-frequency/uncore-frequency.c | 108 ++++--- drivers/platform/x86/intel_ips.c | 3 +- drivers/platform/x86/intel_scu_wdt.c | 2 +- drivers/platform/x86/p2sb.c | 2 +- drivers/platform/x86/serial-multi-instantiate.c | 4 +- drivers/platform/x86/think-lmi.c | 4 +- drivers/platform/x86/thinkpad_acpi.c | 6 +- drivers/platform/x86/wmi.c | 33 ++ include/linux/intel_tpmi.h | 2 + include/linux/platform_data/lenovo-yoga-c630.h | 44 +++ include/linux/platform_data/x86/asus-wmi.h | 4 + include/linux/wmi.h | 4 + tools/power/x86/intel-speed-select/isst-config.c | 2 +- tools/power/x86/intel-speed-select/isst-core.c | 6 + 63 files changed, 2301 insertions(+), 524 deletions(-) create mode 100644 Documentation/ABI/testing/sysfs-bus-wmi delete mode 100644 Documentation/admin-guide/pmf.rst create mode 100644 Documentation/devicetree/bindings/platform/lenovo,yoga-c630-ec.yaml create mode 100644 drivers/platform/arm64/lenovo-yoga-c630.c create mode 100644 drivers/platform/x86/dell/dell-pc.c create mode 100644 drivers/platform/x86/intel/intel_plr_tpmi.c create mode 100644 drivers/platform/x86/intel/tpmi_power_domains.c create mode 100644 drivers/platform/x86/intel/tpmi_power_domains.h create mode 100644 include/linux/platform_data/lenovo-yoga-c630.h