summaryrefslogtreecommitdiff
path: root/Documentation/ABI
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/ABI')
-rw-r--r--Documentation/ABI/README2
-rw-r--r--Documentation/ABI/obsolete/sysfs-bus-usb2
-rw-r--r--Documentation/ABI/obsolete/sysfs-driver-ivpu30
-rw-r--r--Documentation/ABI/removed/sysfs-selinux-user (renamed from Documentation/ABI/obsolete/sysfs-selinux-user)0
-rw-r--r--Documentation/ABI/stable/configfs-nvmet352
-rw-r--r--Documentation/ABI/stable/sysfs-block15
-rw-r--r--Documentation/ABI/stable/sysfs-class-infiniband8
-rw-r--r--Documentation/ABI/stable/sysfs-driver-speakup4
-rw-r--r--Documentation/ABI/stable/sysfs-nvme453
-rw-r--r--Documentation/ABI/testing/amdpmf-interface73
-rw-r--r--Documentation/ABI/testing/configfs-rdma_cm4
-rw-r--r--Documentation/ABI/testing/configfs-thunderbolt_stream98
-rw-r--r--Documentation/ABI/testing/configfs-usb-gadget-uac1_legacy3
-rw-r--r--Documentation/ABI/testing/debugfs-cdns-pcie5
-rw-r--r--Documentation/ABI/testing/debugfs-hisi-hpre7
-rw-r--r--Documentation/ABI/testing/debugfs-hisi-sec7
-rw-r--r--Documentation/ABI/testing/debugfs-hisi-zip7
-rw-r--r--Documentation/ABI/testing/debugfs-vfio26
-rw-r--r--Documentation/ABI/testing/evm1
-rw-r--r--Documentation/ABI/testing/ima_policy13
-rw-r--r--Documentation/ABI/testing/procfs-nfsd-reply_cache_stats38
-rw-r--r--Documentation/ABI/testing/sysfs-block-zram6
-rw-r--r--Documentation/ABI/testing/sysfs-bus-coresight-devices-tpdm10
-rw-r--r--Documentation/ABI/testing/sysfs-bus-cxl28
-rw-r--r--Documentation/ABI/testing/sysfs-bus-dax24
-rw-r--r--Documentation/ABI/testing/sysfs-bus-i3c20
-rw-r--r--Documentation/ABI/testing/sysfs-bus-iio95
-rw-r--r--Documentation/ABI/testing/sysfs-bus-iio-adc-ad71922
-rw-r--r--Documentation/ABI/testing/sysfs-bus-iio-flow21
-rw-r--r--Documentation/ABI/testing/sysfs-bus-iio-frequency11
-rw-r--r--Documentation/ABI/testing/sysfs-bus-iio-frequency-adf435010
-rw-r--r--Documentation/ABI/testing/sysfs-bus-nvdimm3
-rw-r--r--Documentation/ABI/testing/sysfs-bus-pci2
-rw-r--r--Documentation/ABI/testing/sysfs-bus-pci-drivers-btintel_pcie15
-rw-r--r--Documentation/ABI/testing/sysfs-bus-pci-drivers-xhci_hcd2
-rw-r--r--Documentation/ABI/testing/sysfs-bus-usb2
-rw-r--r--Documentation/ABI/testing/sysfs-class-firmware14
-rw-r--r--Documentation/ABI/testing/sysfs-class-hwmon14
-rw-r--r--Documentation/ABI/testing/sysfs-class-ieee80211-rtw8924
-rw-r--r--Documentation/ABI/testing/sysfs-class-issei73
-rw-r--r--Documentation/ABI/testing/sysfs-class-led4
-rw-r--r--Documentation/ABI/testing/sysfs-class-led-multicolor19
-rw-r--r--Documentation/ABI/testing/sysfs-class-power5
-rw-r--r--Documentation/ABI/testing/sysfs-class-power-bd7182813
-rw-r--r--Documentation/ABI/testing/sysfs-class-reboot-mode-reboot_modes39
-rw-r--r--Documentation/ABI/testing/sysfs-class-spi-master34
-rw-r--r--Documentation/ABI/testing/sysfs-devices-faux-tdx-host26
-rw-r--r--Documentation/ABI/testing/sysfs-devices-platform-stratix10-rsu58
-rw-r--r--Documentation/ABI/testing/sysfs-devices-platform-trackpoint2
-rw-r--r--Documentation/ABI/testing/sysfs-devices-system-cpu18
-rw-r--r--Documentation/ABI/testing/sysfs-driver-dell-dw5826e-reset9
-rw-r--r--Documentation/ABI/testing/sysfs-driver-hid-lenovo-go724
-rw-r--r--Documentation/ABI/testing/sysfs-driver-hid-lenovo-go-s304
-rw-r--r--Documentation/ABI/testing/sysfs-driver-intel-xe-hwmon7
-rw-r--r--Documentation/ABI/testing/sysfs-driver-intel-xe-ras30
-rw-r--r--Documentation/ABI/testing/sysfs-driver-intel-xe-sriov31
-rw-r--r--Documentation/ABI/testing/sysfs-driver-ivpu65
-rw-r--r--Documentation/ABI/testing/sysfs-driver-lenovo-yb9-kbdock19
-rw-r--r--Documentation/ABI/testing/sysfs-driver-qat_kpt97
-rw-r--r--Documentation/ABI/testing/sysfs-driver-qat_rl2
-rw-r--r--Documentation/ABI/testing/sysfs-driver-qat_svn114
-rw-r--r--Documentation/ABI/testing/sysfs-driver-tegra-fuse2
-rw-r--r--Documentation/ABI/testing/sysfs-driver-ufs23
-rw-r--r--Documentation/ABI/testing/sysfs-driver-uniwill-laptop52
-rw-r--r--Documentation/ABI/testing/sysfs-edac-memory-repair2
-rw-r--r--Documentation/ABI/testing/sysfs-firmware-acpi6
-rw-r--r--Documentation/ABI/testing/sysfs-firmware-gsmi2
-rw-r--r--Documentation/ABI/testing/sysfs-firmware-sev-vulnerabilities19
-rw-r--r--Documentation/ABI/testing/sysfs-fs-erofs2
-rw-r--r--Documentation/ABI/testing/sysfs-fs-f2fs29
-rw-r--r--Documentation/ABI/testing/sysfs-kernel-mm-damon324
-rw-r--r--Documentation/ABI/testing/sysfs-kernel-slab18
-rw-r--r--Documentation/ABI/testing/sysfs-module9
-rw-r--r--Documentation/ABI/testing/sysfs-platform-asus-wmi9
-rw-r--r--Documentation/ABI/testing/sysfs-platform-dfl-port2
-rw-r--r--Documentation/ABI/testing/sysfs-uevent2
76 files changed, 3440 insertions, 205 deletions
diff --git a/Documentation/ABI/README b/Documentation/ABI/README
index 315fffe1f831..27c962e6a872 100644
--- a/Documentation/ABI/README
+++ b/Documentation/ABI/README
@@ -62,7 +62,7 @@ Users: All users of this interface who wish to be notified when
Note:
- The fields should be use a simple notation, compatible with ReST markup.
+ The fields should use a simple notation, compatible with ReST markup.
Also, the file **should not** have a top-level index, like::
===
diff --git a/Documentation/ABI/obsolete/sysfs-bus-usb b/Documentation/ABI/obsolete/sysfs-bus-usb
index bd096d33fbc7..067016e62e11 100644
--- a/Documentation/ABI/obsolete/sysfs-bus-usb
+++ b/Documentation/ABI/obsolete/sysfs-bus-usb
@@ -26,6 +26,6 @@ Description:
initializes all non-hub devices in the "on" level. Some
drivers may change this setting when they are bound.
- This file is deprecated and will be removed after 2010.
+ This file is deprecated.
Use the power/control file instead; it does exactly the
same thing.
diff --git a/Documentation/ABI/obsolete/sysfs-driver-ivpu b/Documentation/ABI/obsolete/sysfs-driver-ivpu
new file mode 100644
index 000000000000..b906e7149729
--- /dev/null
+++ b/Documentation/ABI/obsolete/sysfs-driver-ivpu
@@ -0,0 +1,30 @@
+What: /sys/bus/pci/drivers/intel_vpu/.../sched_mode
+Date: October 2024
+KernelVersion: 6.12
+Contact: dri-devel@lists.freedesktop.org
+Description: Current NPU scheduling mode. Returns one of the following strings:
+ - "HW" - Hardware Scheduler mode
+ - "OS" - Operating System Scheduler mode
+ Read-only.
+ Deprecated since the "OS" scheduling mode is not usable
+ and will be removed from future versions of the driver.
+ Will be removed in 2027
+
+What: /sys/bus/pci/drivers/intel_vpu/.../npu_max_frequency_mhz
+Date: April 2025
+KernelVersion: 6.15
+Contact: dri-devel@lists.freedesktop.org
+Description: Legacy alias for /sys/bus/pci/drivers/intel_vpu/.../freq/hw_max_freq.
+ Shows maximum frequency in MHz of the NPU's data processing unit.
+ Read-only.
+ Will be removed in 2027
+
+What: /sys/bus/pci/drivers/intel_vpu/.../npu_current_frequency_mhz
+Date: April 2025
+KernelVersion: 6.15
+Contact: dri-devel@lists.freedesktop.org
+Description: Legacy alias for /sys/bus/pci/drivers/intel_vpu/.../freq/current_freq.
+ Shows current frequency in MHz of the NPU's data processing unit.
+ The value is read only when the device is active; otherwise it returns 0.
+ Read-only.
+ Will be removed in 2027
diff --git a/Documentation/ABI/obsolete/sysfs-selinux-user b/Documentation/ABI/removed/sysfs-selinux-user
index 8ab7557f283f..8ab7557f283f 100644
--- a/Documentation/ABI/obsolete/sysfs-selinux-user
+++ b/Documentation/ABI/removed/sysfs-selinux-user
diff --git a/Documentation/ABI/stable/configfs-nvmet b/Documentation/ABI/stable/configfs-nvmet
new file mode 100644
index 000000000000..36b587404ee7
--- /dev/null
+++ b/Documentation/ABI/stable/configfs-nvmet
@@ -0,0 +1,352 @@
+What: /config/nvmet/ports/N/addr_adrfam
+What: /config/nvmet/ports/N/addr_portid
+What: /config/nvmet/ports/N/addr_traddr
+What: /config/nvmet/ports/N/addr_trsvcid
+What: /config/nvmet/ports/N/addr_trtype
+What: /config/nvmet/ports/N/addr_treq
+Date: June 2016
+KernelVersion: 4.8
+Contact: Christoph Hellwig <hch@lst.de>
+Description:
+ Address attributes for an NVMe-oF target port.
+
+ addr_adrfam: Shows or sets the address family. Accepted
+ values: "pcie", "ipv4", "ipv6", "ib", "fc", "pci", "loop".
+
+ addr_portid: Shows or sets the port identifier (u16).
+
+ addr_traddr: Shows or sets the transport address string.
+
+ addr_trsvcid: Shows or sets the transport service identifier.
+
+ addr_trtype: Shows or sets the transport type. Accepted
+ values: "rdma", "fc", "tcp", "pci", "loop". Also
+ initializes default TSAS values.
+
+ addr_treq: Shows or sets the transport security requirements.
+ Accepted values: "not specified", "required",
+ "not required". For TCP with TLS1.3, "not specified" is
+ rejected.
+
+ All attributes require the port to be disabled before
+ modification.
+
+What: /config/nvmet/ports/N/referrals/NAME/addr_adrfam
+What: /config/nvmet/ports/N/referrals/NAME/addr_portid
+What: /config/nvmet/ports/N/referrals/NAME/addr_traddr
+What: /config/nvmet/ports/N/referrals/NAME/addr_trsvcid
+What: /config/nvmet/ports/N/referrals/NAME/addr_trtype
+What: /config/nvmet/ports/N/referrals/NAME/addr_treq
+What: /config/nvmet/ports/N/referrals/NAME/enable
+Date: June 2016
+KernelVersion: 4.8
+Contact: Christoph Hellwig <hch@lst.de>
+Description:
+ Address attributes and enable control for a referral entry
+ under a port. The addr_* attributes have the same semantics
+ as the corresponding port-level attributes. The enable
+ attribute shows or sets whether this referral is enabled
+ (boolean).
+
+What: /config/nvmet/ports/N/param_inline_data_size
+Date: June 2018
+KernelVersion: 4.19
+Contact: Steve Wise <swise@opengridcomputing.com>
+Description:
+ Shows or sets the inline data size for this port. Default
+ is -1 which lets the transport choose. The port must be
+ disabled before modification.
+
+What: /config/nvmet/ports/N/ana_groups/ID/ana_state
+Date: June 2018
+KernelVersion: 4.19
+Contact: Christoph Hellwig <hch@lst.de>
+Description:
+ Shows or sets the ANA (Asymmetric Namespace Access) state
+ for this group on this port. Accepted values: "optimized",
+ "non-optimized", "inaccessible", "persistent-loss",
+ "change". Changes trigger an ANA change event.
+
+What: /config/nvmet/ports/N/param_pi_enable
+Date: May 2020
+KernelVersion: 5.8
+Contact: Israel Rukshin <israelr@mellanox.com>
+Description:
+ Shows or sets whether protection information (PI) is
+ enabled/supported for this port. Accepts boolean value.
+ Only available when CONFIG_BLK_DEV_INTEGRITY is enabled.
+ The port must be disabled before modification.
+
+What: /config/nvmet/ports/N/addr_tsas
+Date: August 2023
+KernelVersion: 6.7
+Contact: Hannes Reinecke <hare@suse.de>
+Description:
+ Shows or sets the transport-specific address subtype. For
+ TCP transport, accepted values: "none", "tls1.3" (requires
+ CONFIG_NVME_TARGET_TCP_TLS). For RDMA transport, shows the
+ QP type: "connected" or "datagram". The port must be
+ disabled before modification.
+
+What: /config/nvmet/ports/N/param_max_queue_size
+Date: January 2024
+KernelVersion: 6.9
+Contact: Max Gurtovoy <mgurtovoy@nvidia.com>
+Description:
+ Shows or sets the maximum queue size for this port. Default
+ is -1 which lets the transport choose. The port must be
+ disabled before modification.
+
+What: /config/nvmet/ports/N/param_mdts
+Date: April 2026
+KernelVersion: 7.1
+Contact: Aurelien Aptel <aaptel@nvidia.com>
+Description:
+ Shows or sets the maximum data transfer size for this port.
+ Default is -1 which lets the transport choose. The port
+ must be disabled before modification.
+
+What: /config/nvmet/subsystems/NAME/attr_allow_any_host
+Date: June 2016
+KernelVersion: 4.8
+Contact: Christoph Hellwig <hch@lst.de>
+Description:
+ Shows or sets whether any host is allowed to connect.
+ Accepts boolean value. Cannot be set to 1 if explicit
+ hosts are linked in the allowed_hosts/ directory.
+
+What: /config/nvmet/subsystems/NAME/namespaces/NSID/device_path
+What: /config/nvmet/subsystems/NAME/namespaces/NSID/device_nguid
+What: /config/nvmet/subsystems/NAME/namespaces/NSID/enable
+Date: June 2016
+KernelVersion: 4.8
+Contact: Christoph Hellwig <hch@lst.de>
+Description:
+ Namespace attributes added with the initial NVMe target.
+
+ device_path: Shows or sets the backend block device path.
+ The namespace must be disabled before modification.
+
+ device_nguid: Shows or sets the NGUID (128-bit identifier).
+ Accepts 32 hex digits with optional "-" or ":" separators.
+ The namespace must be disabled before modification.
+
+ enable: Shows or sets whether this namespace is enabled
+ (boolean).
+
+What: /config/nvmet/subsystems/NAME/namespaces/NSID/device_uuid
+Date: June 2017
+KernelVersion: 4.13
+Contact: Johannes Thumshirn <jthumshirn@suse.de>
+Description:
+ Shows or sets the UUID for this namespace. The namespace
+ must be disabled before modification.
+
+What: /config/nvmet/subsystems/NAME/attr_version
+What: /config/nvmet/subsystems/NAME/attr_serial
+Date: July 2017
+KernelVersion: 4.13
+Contact: Johannes Thumshirn <jthumshirn@suse.de>
+Description:
+ attr_version: Shows or sets the NVMe version reported by
+ this subsystem. Format: "major.minor" or
+ "major.minor.tertiary". Cannot be changed after the
+ subsystem has been discovered.
+
+ attr_serial: Shows or sets the serial number. Must be a
+ 1-20 byte ASCII string (characters 0x20-0x7e). Cannot be
+ changed after the subsystem has been discovered.
+
+What: /config/nvmet/subsystems/NAME/namespaces/NSID/ana_grpid
+Date: June 2018
+KernelVersion: 4.19
+Contact: Christoph Hellwig <hch@lst.de>
+Description:
+ Shows or sets the ANA (Asymmetric Namespace Access) Group
+ ID for this namespace. Must be between 1 and 128. Changing
+ triggers an ANA event notification.
+
+What: /config/nvmet/subsystems/NAME/namespaces/NSID/buffered_io
+Date: June 2018
+KernelVersion: 4.19
+Contact: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
+Description:
+ Shows or sets whether buffered I/O is used for this
+ namespace. Accepts boolean value. The namespace must be
+ disabled before modification.
+
+What: /config/nvmet/subsystems/NAME/namespaces/NSID/p2pmem
+Date: October 2018
+KernelVersion: 4.20
+Contact: Logan Gunthorpe <logang@deltatee.com>
+Description:
+ Shows or sets the P2P DMA memory device for this namespace.
+ Accepts a PCI device BDF, "auto", or "none". The namespace
+ must be disabled before modification. Only available when
+ CONFIG_PCI_P2PDMA is enabled.
+
+What: /config/nvmet/subsystems/NAME/attr_cntlid_min
+What: /config/nvmet/subsystems/NAME/attr_cntlid_max
+Date: January 2020
+KernelVersion: 5.7
+Contact: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
+Description:
+ attr_cntlid_min: Shows or sets the minimum controller ID
+ (u16). Must be nonzero and not greater than attr_cntlid_max.
+
+ attr_cntlid_max: Shows or sets the maximum controller ID
+ (u16). Must be nonzero and not less than attr_cntlid_min.
+
+What: /config/nvmet/subsystems/NAME/attr_model
+Date: January 2020
+KernelVersion: 5.7
+Contact: Mark Ruijter <MRuijter@onestopsystems.com>
+Description:
+ Shows or sets the model number for this subsystem. Must
+ be a 1-40 byte ASCII string (characters 0x20-0x7e).
+ Cannot be changed after the subsystem has been discovered.
+
+What: /config/nvmet/subsystems/NAME/attr_pi_enable
+Date: May 2020
+KernelVersion: 5.8
+Contact: Israel Rukshin <israelr@mellanox.com>
+Description:
+ Shows or sets whether protection information (PI) is
+ enabled/supported for this subsystem. Accepts boolean
+ value. Only available when CONFIG_BLK_DEV_INTEGRITY is
+ enabled.
+
+What: /config/nvmet/subsystems/NAME/namespaces/NSID/revalidate_size
+Date: May 2020
+KernelVersion: 5.8
+Contact: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
+Description:
+ Write-only. Writing 1 triggers namespace size revalidation.
+ If the size has changed, a namespace changed AEN is sent.
+ The namespace must be enabled.
+
+What: /config/nvmet/subsystems/NAME/passthru/device_path
+What: /config/nvmet/subsystems/NAME/passthru/enable
+Date: July 2020
+KernelVersion: 5.9
+Contact: Logan Gunthorpe <logang@deltatee.com>
+Description:
+ Passthrough mode attributes.
+
+ device_path: Shows or sets the NVMe controller character
+ device path (e.g., /dev/nvme0). Cannot be changed while
+ the passthrough controller is active.
+
+ enable: Shows or sets whether passthrough mode is enabled
+ (boolean).
+
+ Only available when CONFIG_NVME_TARGET_PASSTHRU is enabled.
+
+What: /config/nvmet/subsystems/NAME/passthru/admin_timeout
+What: /config/nvmet/subsystems/NAME/passthru/io_timeout
+Date: November 2020
+KernelVersion: 5.11
+Contact: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
+Description:
+ admin_timeout: Shows or sets the admin command timeout for
+ passthrough mode, in jiffies.
+
+ io_timeout: Shows or sets the I/O command timeout for
+ passthrough mode, in jiffies.
+
+ Only available when CONFIG_NVME_TARGET_PASSTHRU is enabled.
+
+What: /config/nvmet/subsystems/NAME/passthru/clear_ids
+Date: June 2022
+KernelVersion: 5.19
+Contact: Alan Adamson <alan.adamson@oracle.com>
+Description:
+ Shows or sets whether to clear identify data IDs in
+ passthrough mode. Only available when
+ CONFIG_NVME_TARGET_PASSTHRU is enabled.
+
+What: /config/nvmet/subsystems/NAME/attr_qid_max
+Date: August 2022
+KernelVersion: 6.1
+Contact: Daniel Wagner <dwagner@suse.de>
+Description:
+ Shows or sets the maximum queue ID (number of I/O queues,
+ u16). Must be between 1 and 128. Changing this value
+ forces reconnection of all connected controllers.
+
+What: /config/nvmet/subsystems/NAME/attr_ieee_oui
+Date: November 2022
+KernelVersion: 6.2
+Contact: Aleksandr Miloserdov <a.miloserdov@yadro.com>
+Description:
+ Shows or sets the IEEE OUI for this subsystem. Displayed
+ in "0x%06x" format. Must be a 24-bit value. Cannot be
+ changed after the subsystem has been discovered.
+
+What: /config/nvmet/subsystems/NAME/attr_firmware
+Date: November 2022
+KernelVersion: 6.2
+Contact: Aleksandr Miloserdov <a.miloserdov@yadro.com>
+Description:
+ Shows or sets the firmware revision string for this
+ subsystem. Must be a 1-8 byte ASCII string (characters
+ 0x20-0x7e). Cannot be changed after the subsystem has
+ been discovered.
+
+What: /config/nvmet/subsystems/NAME/namespaces/NSID/resv_enable
+Date: November 2024
+KernelVersion: 6.13
+Contact: Guixin Liu <kanie@linux.alibaba.com>
+Description:
+ Shows or sets whether persistent reservation support is
+ enabled for this namespace. Accepts boolean value. The
+ namespace must be disabled before modification.
+
+What: /config/nvmet/subsystems/NAME/attr_vendor_id
+What: /config/nvmet/subsystems/NAME/attr_subsys_vendor_id
+Date: January 2025
+KernelVersion: 6.14
+Contact: Damien Le Moal <dlemoal@kernel.org>
+Description:
+ attr_vendor_id: Shows or sets the PCI vendor ID reported
+ by this subsystem. Displayed in "0x%x" format.
+
+ attr_subsys_vendor_id: Shows or sets the PCI subsystem
+ vendor ID. Displayed in "0x%x" format.
+
+What: /config/nvmet/hosts/HOSTNQN/dhchap_key
+What: /config/nvmet/hosts/HOSTNQN/dhchap_ctrl_key
+What: /config/nvmet/hosts/HOSTNQN/dhchap_hash
+What: /config/nvmet/hosts/HOSTNQN/dhchap_dhgroup
+Date: June 2022
+KernelVersion: 6.0
+Contact: Hannes Reinecke <hare@suse.de>
+Description:
+ DH-HMAC-CHAP authentication attributes.
+
+ dhchap_key: Shows or sets the host secret key. Accepts a
+ key string in "DHHC-1:" format.
+
+ dhchap_ctrl_key: Shows or sets the controller secret key
+ for bidirectional authentication. Same format as dhchap_key.
+
+ dhchap_hash: Shows or sets the HMAC hash algorithm.
+ Accepted values: "hmac(sha256)", "hmac(sha384)",
+ "hmac(sha512)".
+
+ dhchap_dhgroup: Shows or sets the Diffie-Hellman group for
+ DH-HMAC-CHAP key exchange. Accepted values: "null",
+ "ffdhe2048", "ffdhe3072", "ffdhe4096", "ffdhe6144".
+ Non-null groups require the corresponding KPP crypto
+ algorithm to be available.
+
+ Only available when CONFIG_NVME_TARGET_AUTH is enabled.
+
+What: /config/nvmet/discovery_nqn
+Date: April 2024
+KernelVersion: 6.9
+Contact: Hannes Reinecke <hare@kernel.org>
+Description:
+ Shows or sets the NQN of the discovery subsystem. The
+ value must be unique and not duplicate any existing
+ subsystem name.
diff --git a/Documentation/ABI/stable/sysfs-block b/Documentation/ABI/stable/sysfs-block
index 09a9d4aca0fd..900b3fc4c72d 100644
--- a/Documentation/ABI/stable/sysfs-block
+++ b/Documentation/ABI/stable/sysfs-block
@@ -886,6 +886,21 @@ Description:
zone commands, they will be treated as regular block devices and
zoned will report "none".
+What: /sys/block/<disk>/queue/zoned_qd1_writes
+Date: January 2026
+Contact: Damien Le Moal <dlemoal@kernel.org>
+Description:
+ [RW] zoned_qd1_writes indicates if write operations to a zoned
+ block device are being handled using a single issuer context (a
+ kernel thread) operating at a maximum queue depth of 1. This
+ attribute is visible only for zoned block devices. The default
+ value for zoned block devices that are not rotational devices
+ (e.g. ZNS SSDs or zoned UFS devices) is 0. For rotational zoned
+ block devices (e.g. SMR HDDs) the default value is 1. Since
+ this default may not be appropriate for some devices, e.g.
+ remotely connected devices over high latency networks, the user
+ can disable this feature by setting this attribute to 0.
+
What: /sys/block/<disk>/hidden
Date: March 2023
diff --git a/Documentation/ABI/stable/sysfs-class-infiniband b/Documentation/ABI/stable/sysfs-class-infiniband
index 694f23a03a28..7ba116103429 100644
--- a/Documentation/ABI/stable/sysfs-class-infiniband
+++ b/Documentation/ABI/stable/sysfs-class-infiniband
@@ -148,17 +148,17 @@ Description:
**Data info**:
port_xmit_data: (RO) Total number of data octets, divided by 4
- (lanes), transmitted on all VLs. This is 64 bit counter
+ (lanes), transmitted on all VLs. This is a 64-bit counter
port_rcv_data: (RO) Total number of data octets, divided by 4
- (lanes), received on all VLs. This is 64 bit counter.
+ (lanes), received on all VLs. This is a 64-bit counter.
port_xmit_packets: (RO) Total number of packets transmitted on
all VLs from this port. This may include packets with errors.
- This is 64 bit counter.
+ This is a 64-bit counter.
port_rcv_packets: (RO) Total number of packets (this may include
- packets containing Errors. This is 64 bit counter.
+ packets containing Errors). This is a 64-bit counter.
link_downed: (RO) Total number of times the Port Training state
machine has failed the link error recovery process and downed
diff --git a/Documentation/ABI/stable/sysfs-driver-speakup b/Documentation/ABI/stable/sysfs-driver-speakup
index 8b508b4a7a00..69c26b911fe3 100644
--- a/Documentation/ABI/stable/sysfs-driver-speakup
+++ b/Documentation/ABI/stable/sysfs-driver-speakup
@@ -16,8 +16,8 @@ What: /sys/accessibility/speakup/bleeps
KernelVersion: 2.6
Contact: speakup@linux-speakup.org
Description: This controls whether one hears beeps through the PC speaker
- when using speakup's review commands.
- TODO: what values does it accept?
+ when using speakup's review commands. Range: 0-3. 0 = off, 1 = beeps
+ only, 2 = announcements only, 3 = beeps and announcements (default).
What: /sys/accessibility/speakup/bleep_time
KernelVersion: 2.6
diff --git a/Documentation/ABI/stable/sysfs-nvme b/Documentation/ABI/stable/sysfs-nvme
new file mode 100644
index 000000000000..a2f5d0710db4
--- /dev/null
+++ b/Documentation/ABI/stable/sysfs-nvme
@@ -0,0 +1,453 @@
+What: /sys/class/nvme/nvmeX/model
+What: /sys/class/nvme/nvmeX/serial
+What: /sys/class/nvme/nvmeX/firmware_rev
+Date: January 2016
+KernelVersion: 4.5
+Contact: Keith Busch <kbusch@kernel.org>
+Description:
+ Shows the model, serial number, or firmware revision string
+ of the NVMe controller, as reported in the Identify
+ Controller data structure.
+
+What: /sys/class/nvme/nvmeX/cntlid
+Date: February 2016
+KernelVersion: 4.6
+Contact: Ming Lin <ming.l@ssi.samsung.com>
+Description:
+ Shows the controller identifier assigned by the NVMe
+ subsystem.
+
+What: /sys/class/nvme/nvmeX/cntrltype
+What: /sys/class/nvme/nvmeX/dctype
+Date: February 2022
+KernelVersion: 5.18
+Contact: Martin Belanger <martin.belanger@dell.com>
+Description:
+ cntrltype: Shows the controller type. Possible values: "io",
+ "discovery", "admin", "reserved".
+
+ dctype: Shows the discovery controller type. Possible values:
+ "none", "ddc", "cdc", "reserved".
+
+What: /sys/class/nvme/nvmeX/reset_controller
+Date: November 2015
+KernelVersion: 4.5
+Contact: Christoph Hellwig <hch@lst.de>
+Description:
+ Write-only. Writing any value triggers a synchronous
+ controller reset.
+
+What: /sys/class/nvme/nvmeX/rescan_controller
+Date: April 2016
+KernelVersion: 4.7
+Contact: Keith Busch <kbusch@kernel.org>
+Description:
+ Write-only. Writing any value triggers a namespace rescan
+ on this controller.
+
+What: /sys/class/nvme/nvmeX/transport
+What: /sys/class/nvme/nvmeX/subsysnqn
+What: /sys/class/nvme/nvmeX/address
+What: /sys/class/nvme/nvmeX/delete_controller
+What: /sys/class/nvme/nvmeX/reconnect_delay
+What: /sys/class/nvme/nvmeX/ctrl_loss_tmo
+Date: June 2016
+KernelVersion: 4.8
+Contact: Ming Lin <ming.l@ssi.samsung.com>
+Description:
+ Fabrics controller attributes added with NVMe-oF support.
+
+ transport: Shows the transport type string. Possible values:
+ "pcie", "tcp", "rdma", "fc", "loop".
+
+ subsysnqn: Shows the NVMe Qualified Name (NQN) of the
+ subsystem this controller belongs to.
+
+ address: Shows the transport-specific address string. Only
+ available for fabrics controllers.
+
+ delete_controller: Write-only. Triggers deletion of this
+ fabrics controller.
+
+ reconnect_delay: Shows or sets the reconnect delay in
+ seconds. Reading returns the delay value, or "off" if
+ disabled.
+
+ ctrl_loss_tmo: Shows or sets the controller loss timeout in
+ seconds. Reading returns the timeout value, or "off" if
+ infinite reconnects are allowed. Writing a negative value
+ disables the timeout.
+
+What: /sys/class/nvme/nvmeX/hostnqn
+What: /sys/class/nvme/nvmeX/hostid
+Date: February 2020
+KernelVersion: 5.7
+Contact: Sagi Grimberg <sagi@grimberg.me>
+Description:
+ hostnqn: Shows the host NQN used by this fabrics controller.
+
+ hostid: Shows the host identifier (UUID format) used by this
+ fabrics controller.
+
+ Only available for fabrics controllers.
+
+What: /sys/class/nvme/nvmeX/fast_io_fail_tmo
+Date: November 2020
+KernelVersion: 5.11
+Contact: Victor Gladkov <Victor.Gladkov@kioxia.com>
+Description:
+ Shows or sets the fast I/O fail timeout in seconds. Reading
+ returns the timeout value, or "off" if disabled. Writing a
+ negative value disables the fast I/O fail. Only available
+ for fabrics controllers.
+
+What: /sys/class/nvme/nvmeX/kato
+Date: April 2021
+KernelVersion: 5.13
+Contact: Hannes Reinecke <hare@suse.de>
+Description:
+ Shows the Keep Alive Timeout value in milliseconds for
+ this controller.
+
+What: /sys/class/nvme/nvmeX/cmb
+Date: October 2016
+KernelVersion: 4.9
+Contact: Stephen Bates <sbates@raithlin.com>
+Description:
+ Shows the Controller Memory Buffer (CMB) register values
+ in format "cmbloc : 0x%08x\ncmbsz : 0x%08x\n". Only
+ visible when the controller has a CMB (cmbsz != 0).
+ PCI transport only.
+
+What: /sys/class/nvme/nvmeX/cmbloc
+What: /sys/class/nvme/nvmeX/cmbsz
+What: /sys/class/nvme/nvmeX/hmb
+Date: July 2021
+KernelVersion: 5.15
+Contact: Keith Busch <kbusch@kernel.org>
+Description:
+ cmbloc: Shows the CMBLOC register value.
+
+ cmbsz: Shows the CMBSZ register value.
+
+ cmbloc and cmbsz are only visible when the controller has
+ a CMB. PCI transport only.
+
+ hmb: Shows or sets whether the Host Memory Buffer (HMB) is
+ enabled. Reading returns 1 (enabled) or 0 (disabled).
+ Writing 1 enables HMB; writing 0 disables it. Only
+ visible when the controller supports HMB (hmpre != 0).
+ PCI transport only.
+
+What: /sys/class/nvme/nvmeX/state
+Date: November 2016
+KernelVersion: 4.11
+Contact: Sagi Grimberg <sagi@grimberg.me>
+Description:
+ Shows the current state of the controller. Possible values:
+ "new", "live", "resetting", "connecting", "deleting",
+ "deleting (no IO)", "dead".
+
+What: /sys/class/nvme/nvmeX/numa_node
+Date: November 2018
+KernelVersion: 5.0
+Contact: Hannes Reinecke <hare@suse.de>
+Description:
+ Shows the NUMA node the controller is attached to.
+
+What: /sys/class/nvme/nvmeX/queue_count
+What: /sys/class/nvme/nvmeX/sqsize
+Date: September 2019
+KernelVersion: 5.4
+Contact: James Smart <jsmart2021@gmail.com>
+Description:
+ queue_count: Shows the total number of queues (admin + I/O)
+ for this controller.
+
+ sqsize: Shows the submission queue size for this controller.
+
+What: /sys/class/nvme/nvmeX/dhchap_secret
+What: /sys/class/nvme/nvmeX/dhchap_ctrl_secret
+Date: June 2022
+KernelVersion: 6.0
+Contact: Hannes Reinecke <hare@suse.de>
+Description:
+ dhchap_secret: Shows or sets the host DH-HMAC-CHAP secret
+ for this controller. Reading returns "none" if not set.
+ Writing must use the "DHHC-1:" key format and triggers
+ re-authentication.
+
+ dhchap_ctrl_secret: Shows or sets the controller
+ DH-HMAC-CHAP secret for bidirectional authentication.
+ Same format as dhchap_secret.
+
+ Only available when CONFIG_NVME_HOST_AUTH is enabled and
+ for fabrics controllers.
+
+What: /sys/class/nvme/nvmeX/tls_key
+Date: August 2023
+KernelVersion: 6.7
+Contact: Hannes Reinecke <hare@suse.de>
+Description:
+ Shows the serial of the currently active TLS PSK as hex.
+ Returns empty if no TLS key is active. Only available for
+ TCP controllers with TLS or secure concatenation enabled
+ (CONFIG_NVME_TCP_TLS).
+
+What: /sys/class/nvme/nvmeX/tls_configured_key
+Date: July 2024
+KernelVersion: 6.12
+Contact: Hannes Reinecke <hare@kernel.org>
+Description:
+ Shows the serial of the configured TLS key. Writing 0
+ triggers a PSK reauthentication (REPLACETLSPSK) with
+ the target. After reauthentication the returned serial
+ will be the new key. Only available for TCP controllers
+ with secure concatenation enabled (CONFIG_NVME_TCP_TLS).
+
+What: /sys/class/nvme/nvmeX/tls_keyring
+Date: July 2024
+KernelVersion: 6.12
+Contact: Hannes Reinecke <hare@kernel.org>
+Description:
+ Shows the TLS keyring description. Only available for TCP
+ controllers with a keyring configured (CONFIG_NVME_TCP_TLS).
+
+What: /sys/class/nvme/nvmeX/tls_mode
+Date: April 2026
+KernelVersion: 7.1
+Contact: Daniel Wagner <wagi@kernel.org>
+Description:
+ Shows the TLS mode: "tls" for direct TLS or "concat" for
+ secure concatenation. Only available for TCP controllers
+ with TLS or secure concatenation enabled
+ (CONFIG_NVME_TCP_TLS).
+
+What: /sys/class/nvme/nvmeX/passthru_err_log_enabled
+Date: January 2024
+KernelVersion: 6.8
+Contact: Alan Adamson <alan.adamson@oracle.com>
+Description:
+ Shows or sets whether admin passthrough error logging is
+ enabled for this controller. Reading returns "on" or "off".
+ Writing accepts a boolean value.
+
+What: /sys/class/nvme/nvmeX/quirks
+Date: November 2025
+KernelVersion: 7.0
+Contact: Maurizio Lombardi <mlombard@redhat.com>
+Description:
+ Shows the active quirk names for this controller, one per
+ line. Shows "none" if no quirks are active.
+
+What: /sys/class/nvme/nvmeX/admin_timeout
+What: /sys/class/nvme/nvmeX/io_timeout
+Date: May 2026
+KernelVersion: 7.2
+Contact: Maurizio Lombardi <mlombard@redhat.com>
+Description:
+ admin_timeout: Shows or sets the admin command timeout in
+ milliseconds.
+
+ io_timeout: Shows or sets the I/O command timeout in
+ milliseconds. Changes are propagated to all namespace
+ request queues.
+
+ The value must be nonzero. Only writable after the
+ controller has been started at least once.
+
+What: /sys/block/nvmeXnY/uuid
+What: /sys/block/nvmeXnY/eui
+What: /sys/block/nvmeXnY/nsid
+Date: December 2015
+KernelVersion: 4.5
+Contact: Keith Busch <kbusch@kernel.org>
+Description:
+ Namespace identification attributes.
+
+ uuid: Shows the UUID for this namespace. Falls back to
+ showing the NGUID for backward compatibility. Hidden if
+ both are all zeros.
+
+ eui: Shows the IEEE Extended Unique Identifier (EUI-64).
+ Hidden if all zeros.
+
+ nsid: Shows the namespace identifier (NSID).
+
+What: /sys/block/nvmeXnY/wwid
+Date: February 2016
+KernelVersion: 4.6
+Contact: Keith Busch <kbusch@kernel.org>
+Description:
+ Shows the World Wide Identifier for this namespace. The
+ format depends on available identifiers (in priority
+ order): "uuid.{UUID}", "eui.{NGUID}", "eui.{EUI64}", or
+ "nvme.{VID}-{SERIAL}-{MODEL}-{NSID}".
+
+What: /sys/block/nvmeXnY/nguid
+Date: June 2017
+KernelVersion: 4.13
+Contact: Johannes Thumshirn <jthumshirn@suse.de>
+Description:
+ Shows the Namespace Globally Unique Identifier (NGUID).
+ Hidden if the NGUID is all zeros.
+
+What: /sys/block/nvmeXcYnZ/ana_grpid
+What: /sys/block/nvmeXcYnZ/ana_state
+Date: May 2018
+KernelVersion: 4.19
+Contact: Christoph Hellwig <hch@lst.de>
+Description:
+ ana_grpid: Shows the ANA Group ID for this namespace
+ path device.
+
+ ana_state: Shows the ANA state. Possible values:
+ "optimized", "non-optimized", "inaccessible",
+ "persistent-loss", "change".
+
+ Only visible when the controller supports ANA.
+ Requires CONFIG_NVME_MULTIPATH.
+
+What: /sys/block/nvmeXcYnZ/queue_depth
+Date: June 2024
+KernelVersion: 6.11
+Contact: Thomas Song <tsong@purestorage.com>
+Description:
+ Shows the current active I/O count on this path's
+ controller. Returns empty if iopolicy is not "queue-depth".
+ Requires CONFIG_NVME_MULTIPATH.
+
+What: /sys/block/nvmeXcYnZ/numa_nodes
+Date: January 2025
+KernelVersion: 6.15
+Contact: Nilay Shroff <nilay@linux.ibm.com>
+Description:
+ Shows the NUMA node mask for which this path is the
+ currently selected path. Returns empty if iopolicy is not
+ "numa". Requires CONFIG_NVME_MULTIPATH.
+
+What: /sys/block/nvmeXnY/delayed_removal_secs
+Date: May 2025
+KernelVersion: 6.16
+Contact: Nilay Shroff <nilay@linux.ibm.com>
+Description:
+ Shows or sets the delayed removal timeout in seconds for
+ the multipath head device. When nonzero, I/O is queued
+ instead of failed when all paths are gone, and head removal
+ is deferred. Only visible on multipath head devices.
+ Requires CONFIG_NVME_MULTIPATH.
+
+What: /sys/block/nvmeXnY/csi
+What: /sys/block/nvmeXnY/metadata_bytes
+What: /sys/block/nvmeXnY/nuse
+Date: December 2023
+KernelVersion: 6.8
+Contact: Daniel Wagner <dwagner@suse.de>
+Description:
+ csi: Shows the Command Set Identifier for this namespace.
+
+ metadata_bytes: Shows the metadata size in bytes.
+
+ nuse: Shows the Namespace Utilization (NUSE) value. Reading
+ triggers an Identify Namespace command to refresh the
+ value (rate-limited to avoid excessive commands).
+
+What: /sys/block/nvmeXnY/passthru_err_log_enabled
+Date: January 2024
+KernelVersion: 6.8
+Contact: Alan Adamson <alan.adamson@oracle.com>
+Description:
+ Shows or sets whether I/O passthrough error logging is
+ enabled for this namespace. Reading returns "on" or "off".
+ Writing accepts a boolean value.
+
+What: /sys/class/nvme/nvmeX/diag/command_error_count
+What: /sys/class/nvme/nvmeX/diag/reset_count
+What: /sys/class/nvme/nvmeX/diag/reconnect_count
+Date: May 2026
+KernelVersion: 7.2
+Contact: Nilay Shroff <nilay@linux.ibm.com>
+Description:
+ Controller diagnostic counters.
+
+ command_error_count: Admin command error counter.
+
+ reset_count: Controller reset counter.
+
+ reconnect_count: Accumulated reconnect counter. Only
+ available for fabrics controllers.
+
+ All counters can be reset by writing a value.
+
+What: /sys/block/nvmeXnY/diag/command_retries_count
+What: /sys/block/nvmeXnY/diag/command_error_count
+Date: May 2026
+KernelVersion: 7.2
+Contact: Nilay Shroff <nilay@linux.ibm.com>
+Description:
+ Namespace diagnostic counters for non-multipath
+ configurations (when CONFIG_NVME_MULTIPATH is not
+ configured).
+
+ command_retries_count: I/O command retry counter.
+
+ command_error_count: I/O command error counter.
+
+ All counters can be reset by writing any value.
+
+What: /sys/block/nvmeXcYnZ/diag/command_retries_count
+What: /sys/block/nvmeXcYnZ/diag/command_error_count
+What: /sys/block/nvmeXcYnZ/diag/multipath_failover_count
+What: /sys/block/nvmeXnY/diag/io_requeue_no_usable_path_count
+What: /sys/block/nvmeXnY/diag/io_fail_no_available_path_count
+Date: May 2026
+KernelVersion: 7.2
+Contact: Nilay Shroff <nilay@linux.ibm.com>
+Description:
+ Namespace diagnostic counters for multipath
+ configurations (when CONFIG_NVME_MULTIPATH is
+ configured).
+
+ command_retries_count: I/O command retry counter.
+
+ command_error_count: I/O command error counter.
+
+ multipath_failover_count: Multipath failover counter.
+
+ io_requeue_no_usable_path_count: Counter of I/Os
+ requeued because no usable path was available.
+
+ io_fail_no_available_path_count: Counter of I/Os
+ failed because no available path existed.
+
+ All counters can be reset by writing any value.
+
+What: /sys/class/nvme-subsystem/nvme-subsysX/model
+What: /sys/class/nvme-subsystem/nvme-subsysX/serial
+What: /sys/class/nvme-subsystem/nvme-subsysX/firmware_rev
+What: /sys/class/nvme-subsystem/nvme-subsysX/subsysnqn
+Date: November 2017
+KernelVersion: 4.15
+Contact: Hannes Reinecke <hare@suse.de>
+Description:
+ Shows the model, serial number, firmware revision, or NQN
+ of the NVMe subsystem.
+
+What: /sys/class/nvme-subsystem/nvme-subsysX/iopolicy
+Date: February 2019
+KernelVersion: 5.1
+Contact: Hannes Reinecke <hare@suse.de>
+Description:
+ Shows or sets the multipath I/O path selection policy for
+ this subsystem. Accepted values: "numa", "round-robin",
+ "queue-depth". Changing the policy clears all current path
+ selections. Only available when CONFIG_NVME_MULTIPATH is
+ enabled.
+
+What: /sys/class/nvme-subsystem/nvme-subsysX/subsystype
+Date: September 2021
+KernelVersion: 5.16
+Contact: Hannes Reinecke <hare@suse.de>
+Description:
+ Shows the subsystem type. Possible values: "discovery",
+ "nvm", "reserved".
diff --git a/Documentation/ABI/testing/amdpmf-interface b/Documentation/ABI/testing/amdpmf-interface
new file mode 100644
index 000000000000..625f90a013d0
--- /dev/null
+++ b/Documentation/ABI/testing/amdpmf-interface
@@ -0,0 +1,73 @@
+What: /dev/amdpmf_interface
+Date: June 2026
+KernelVersion: 7.2
+Contact: Shyam Sundar S K <Shyam-sundar.S-k@amd.com>
+Description:
+ The AMD Platform Management Framework (PMF) util layer exposes a
+ minimal user-space interface via a character device for feature
+ discovery and metrics monitoring.
+
+ When CONFIG_AMD_PMF_UTIL_SUPPORT is enabled, the driver creates
+ a character device:
+
+ ======================
+ /dev/amdpmf_interface
+ ======================
+
+ The interface supports a single ioctl:
+
+ ============================ =======================================
+ IOCTL Usage
+ IOCTL_AMD_PMF_POPULATE_DATA User passes a struct amd_pmf_info with
+ the size field set to sizeof(struct
+ amd_pmf_info). The driver returns all
+ available metrics and feature status
+ in the structure.
+ ============================ =======================================
+
+ struct amd_pmf_info layout:
+
+ ======================= ========== ================================
+ Field Type Description
+ size __u64 Structure size for versioning
+ features_supported __u32 Bitmask of supported features
+ platform_type __u32 Platform form factor orientation
+ power_source __u32 AC/DC power source
+ laptop_placement __u32 Device placement state
+ lid_state __u32 Lid open/closed status
+ user_presence __u32 User presence detection
+ slider_position __u32 Current power slider position
+ skin_temp __s32 Skin temperature (centidegrees)
+ gfx_busy __u32 Graphics workload percentage
+ ambient_light __s32 Ambient light sensor reading
+ avg_c0_residency __u32 Average C0 state residency
+ max_c0_residency __u32 Maximum C0 state residency
+ socket_power __u32 Socket power consumption
+ bios_input[10] __u32 Custom BIOS input parameters
+ bios_output[10] __u32 Custom BIOS output parameters
+ ======================= ========== ================================
+
+ Feature Support Flags (features_supported bitmask):
+
+ ===================================== ==== =============================
+ Flag Bit Description
+ AMD_PMF_FEAT_AUTO_MODE 0 Auto Mode feature support
+ AMD_PMF_FEAT_STATIC_POWER_SLIDER 1 Static Power Slider support
+ AMD_PMF_FEAT_POLICY_BUILDER 2 Policy Builder (Smart PC)
+ AMD_PMF_FEAT_DYNAMIC_POWER_SLIDER_AC 3 Dynamic slider on AC
+ AMD_PMF_FEAT_DYNAMIC_POWER_SLIDER_DC 4 Dynamic slider on DC
+ ===================================== ==== =============================
+
+ Return codes:
+
+ ============= ============================================================
+ Return code Description
+ 0 Success
+ EINVAL Invalid size or parameter
+ EFAULT copy_to_user/copy_from_user failures
+ ENODEV PMF device not available
+ ENOTTY Unknown ioctl command
+ ============= ============================================================
+
+ User-space tools integrating with AMD PMF to discover capabilities and
+ monitor real-time metrics for thermal and power management validation.
diff --git a/Documentation/ABI/testing/configfs-rdma_cm b/Documentation/ABI/testing/configfs-rdma_cm
index 74f9506f42e7..739f7b6a1259 100644
--- a/Documentation/ABI/testing/configfs-rdma_cm
+++ b/Documentation/ABI/testing/configfs-rdma_cm
@@ -12,6 +12,10 @@ Description: Interface is used to configure RDMA-cable HCAs in respect to
for this HCA has to be created:
mkdir -p /config/rdma_cm/<hca>
+ Note: configfs has no network namespace support, so this
+ interface cannot represent two devices that share a name in
+ different network namespaces (possible in exclusive netns mode).
+
What: /config/rdma_cm/<hca>/ports/<port-num>/default_roce_mode
Date: November 29, 2015
diff --git a/Documentation/ABI/testing/configfs-thunderbolt_stream b/Documentation/ABI/testing/configfs-thunderbolt_stream
new file mode 100644
index 000000000000..cbecb3d8db50
--- /dev/null
+++ b/Documentation/ABI/testing/configfs-thunderbolt_stream
@@ -0,0 +1,98 @@
+What: /sys/kernel/config/thunderbolt/stream/<xdomain>.<service>
+Date: Sep 2026
+KernelVersion: v7.2
+Contact: Mika Westerberg <mika.westerberg@linux.intel.com>
+Description:
+ Configuration group for a stream Thunderbolt/USB4
+ service. It is possible to create groups even if there
+ is no connection yet to the other host. Once a
+ connection established and there is stream service on
+ the remote side that matches, this configuration is
+ applied to it.
+
+ To find the service name you can run tblist from tbtools [1]:
+
+ # tblist -A
+ ...
+ Domain 0 Route 3 Index 0: stream
+
+ [1] https://github.com/intel/tbtools
+
+What: /sys/kernel/config/thunderbolt/stream/<xdomain>.<service>/$name
+Date: Sep 2026
+KernelVersion: v7.2
+Contact: Mika Westerberg <mika.westerberg@linux.intel.com>
+Description:
+ Creates new stream with $name and fills it with the
+ default values. If there is an advertised remote stream
+ with the same name, uses its values as the default.
+
+What: /sys/kernel/config/thunderbolt/stream/<xdomain>.<service>/$name/busy_poll
+Date: Nov 2026
+KernelVersion: v7.3
+Contact: Mika Westerberg <mika.westerberg@linux.intel.com>
+Description:
+ Instead of using interrupts for completing the frames in
+ the TX/RX rings, busy poll them directly from the
+ read(2) and write(2) calls. This burns more CPU cycles
+ but provides lower latency for applications that need it.
+
+ This also makes poll(2) return EPOLLERR because
+ interrupts do not provide wakeup anymore. Likewise a
+ blocking read(2) without available data busy-spins until
+ data arrives or a signal is received.
+
+What: /sys/kernel/config/thunderbolt/stream/<xdomain>.<service>/$name/index
+Date: Sep 2026
+KernelVersion: v7.2
+Contact: Mika Westerberg <mika.westerberg@linux.intel.com>
+Description:
+ This matches the X in /dev/tbstreamX and allows userspace
+ to map the configfs directory to the corresponding character
+ device.
+
+What: /sys/kernel/config/thunderbolt/stream/<xdomain>.<service>/$name/in_hopid
+Date: Sep 2026
+KernelVersion: v7.2
+Contact: Mika Westerberg <mika.westerberg@linux.intel.com>
+Description:
+ In HopID used with the read path of the tunnel. Available HopIDs
+ for tunneling start from 8. You can pass also -1 for automatic
+ allocation. The allocated value can be read here. Writing 0 will
+ de-allocate if the stream is not in use.
+
+ To figure out the maximum HopID you can run tbget from
+ tbtools for the lane adapter. For example below we check
+ for lane adapter number 1 (first USB4 port):
+
+ # tbget -r 0 -a 1 -D ADP_CS_5.Max\ Input\ HopID
+ 19
+
+ This allows to use anything between 8 and 19 inclusive.
+
+What: /sys/kernel/config/thunderbolt/stream/<xdomain>.<service>/$name/out_hopid
+Date: Sep 2026
+KernelVersion: v7.2
+Contact: Mika Westerberg <mika.westerberg@linux.intel.com>
+Description:
+ Out HopID used with the write path of the tunnel. Available HopIDs
+ for tunneling start from 8. You can pass also -1 for automatic
+ allocation. The allocated value can be read here. Writing 0 will
+ de-allocate if the stream is not in use. See @in_hopid
+ for how to figure out the maximum HopID.
+
+What: /sys/kernel/config/thunderbolt/stream/<xdomain>.<service>/$name/ring_size
+Date: Sep 2026
+KernelVersion: v7.2
+Contact: Mika Westerberg <mika.westerberg@linux.intel.com>
+Description:
+ Size of the TX/RX rings. Can be adjusted between 32 and
+ 4096. The default is 256.
+
+What: /sys/kernel/config/thunderbolt/stream/<xdomain>.<service>/$name/throttling
+Date: Sep 2026
+KernelVersion: v7.2
+Contact: Mika Westerberg <mika.westerberg@linux.intel.com>
+Description:
+ Interrupt throttling rate in ns. Lower values can give
+ better latency. The default is 8192 ns.
diff --git a/Documentation/ABI/testing/configfs-usb-gadget-uac1_legacy b/Documentation/ABI/testing/configfs-usb-gadget-uac1_legacy
index b2eaefd9bc49..6a681d219f43 100644
--- a/Documentation/ABI/testing/configfs-usb-gadget-uac1_legacy
+++ b/Documentation/ABI/testing/configfs-usb-gadget-uac1_legacy
@@ -5,8 +5,5 @@ Description:
The attributes:
audio_buf_size - audio buffer size
- fn_cap - capture pcm device file name
- fn_cntl - control device file name
- fn_play - playback pcm device file name
req_buf_size - ISO OUT endpoint request buffer size
req_count - ISO OUT endpoint request count
diff --git a/Documentation/ABI/testing/debugfs-cdns-pcie b/Documentation/ABI/testing/debugfs-cdns-pcie
new file mode 100644
index 000000000000..be963784c446
--- /dev/null
+++ b/Documentation/ABI/testing/debugfs-cdns-pcie
@@ -0,0 +1,5 @@
+What: /sys/kernel/debug/cdns_pcie_<dev>/ltssm_status
+Date: July 2026
+Contact: Hans Zhang <18255117159@163.com>
+Description: (RO) Read will return the current PCIe LTSSM state in both
+ string and raw value. \ No newline at end of file
diff --git a/Documentation/ABI/testing/debugfs-hisi-hpre b/Documentation/ABI/testing/debugfs-hisi-hpre
index 29fb7d5ffc69..5a137f701eea 100644
--- a/Documentation/ABI/testing/debugfs-hisi-hpre
+++ b/Documentation/ABI/testing/debugfs-hisi-hpre
@@ -50,6 +50,13 @@ Description: Dump debug registers from the QM.
Available for PF and VF in host. VF in guest currently only
has one debug register.
+What: /sys/kernel/debug/hisi_hpre/<bdf>/dev_usage
+Date: Mar 2026
+Contact: linux-crypto@vger.kernel.org
+Description: Query the real-time bandwidth usage of device.
+ Returns the bandwidth usage of each channel on the device.
+ The returned number is in percentage.
+
What: /sys/kernel/debug/hisi_hpre/<bdf>/qm/current_q
Date: Sep 2019
Contact: linux-crypto@vger.kernel.org
diff --git a/Documentation/ABI/testing/debugfs-hisi-sec b/Documentation/ABI/testing/debugfs-hisi-sec
index 82bf4a0dc7f7..676e2dc2de8d 100644
--- a/Documentation/ABI/testing/debugfs-hisi-sec
+++ b/Documentation/ABI/testing/debugfs-hisi-sec
@@ -24,6 +24,13 @@ Description: The <bdf> is related the function for PF and VF.
1/1000~1000/1000 of total QoS. The driver reading alg_qos to
get related QoS in the host and VM, Such as "cat alg_qos".
+What: /sys/kernel/debug/hisi_sec2/<bdf>/dev_usage
+Date: Mar 2026
+Contact: linux-crypto@vger.kernel.org
+Description: Query the real-time bandwidth usage of device.
+ Returns the bandwidth usage of each channel on the device.
+ The returned number is in percentage.
+
What: /sys/kernel/debug/hisi_sec2/<bdf>/qm/qm_regs
Date: Oct 2019
Contact: linux-crypto@vger.kernel.org
diff --git a/Documentation/ABI/testing/debugfs-hisi-zip b/Documentation/ABI/testing/debugfs-hisi-zip
index 0abd65d27e9b..46bf47bf6b42 100644
--- a/Documentation/ABI/testing/debugfs-hisi-zip
+++ b/Documentation/ABI/testing/debugfs-hisi-zip
@@ -36,6 +36,13 @@ Description: The <bdf> is related the function for PF and VF.
1/1000~1000/1000 of total QoS. The driver reading alg_qos to
get related QoS in the host and VM, Such as "cat alg_qos".
+What: /sys/kernel/debug/hisi_zip/<bdf>/dev_usage
+Date: Mar 2026
+Contact: linux-crypto@vger.kernel.org
+Description: Query the real-time bandwidth usage of device.
+ Returns the bandwidth usage of each channel on the device.
+ The returned number is in percentage.
+
What: /sys/kernel/debug/hisi_zip/<bdf>/qm/regs
Date: Nov 2018
Contact: linux-crypto@vger.kernel.org
diff --git a/Documentation/ABI/testing/debugfs-vfio b/Documentation/ABI/testing/debugfs-vfio
index 70ec2d454686..ed2f29c3a9b4 100644
--- a/Documentation/ABI/testing/debugfs-vfio
+++ b/Documentation/ABI/testing/debugfs-vfio
@@ -29,3 +29,29 @@ Date: Oct 2025
KernelVersion: 6.18
Contact: Cédric Le Goater <clg@redhat.com>
Description: Read the migration features of the vfio device.
+
+What: /sys/kernel/debug/vfio/<device>/pci
+Date: June 2026
+KernelVersion: 7.2
+Contact: Alex Williamson <alex.williamson@nvidia.com>
+Description: This debugfs file directory is used for debugging
+ VFIO PCI devices.
+
+What: /sys/kernel/debug/vfio/<device>/pci/nointxmask
+Date: June 2026
+KernelVersion: 7.2
+Contact: Alex Williamson <alex.williamson@nvidia.com>
+Description: Read the nointxmask policy latched for this device. This
+ policy governs whether the device may use PCI 2.3 style
+ INTx masking when supported, reporting a value of "N", or
+ requires APIC level INTx masking, reporting a value of "Y".
+
+What: /sys/kernel/debug/vfio/<device>/pci/disable_idle_d3
+Date: June 2026
+KernelVersion: 7.2
+Contact: Alex Williamson <alex.williamson@nvidia.com>
+Description: Read the disable_idle_d3 policy latched for this device. This
+ policy governs whether the device PM runtime usage count is
+ kept elevated while the device is bound to the driver and
+ unused, reporting a value of "Y", or decremented to allow the
+ device to enter a low power state, reporting a value of "N".
diff --git a/Documentation/ABI/testing/evm b/Documentation/ABI/testing/evm
index 44750a933db4..db3007babb58 100644
--- a/Documentation/ABI/testing/evm
+++ b/Documentation/ABI/testing/evm
@@ -26,6 +26,7 @@ Description:
2 Permit modification of EVM-protected metadata at
runtime. Not supported if HMAC validation and
creation is enabled (deprecated).
+ 3 Require asymmetric signatures to be version 3
31 Disable further runtime modification of EVM policy
=== ==================================================
diff --git a/Documentation/ABI/testing/ima_policy b/Documentation/ABI/testing/ima_policy
index d4b3696a9efb..b8a763e4c9fb 100644
--- a/Documentation/ABI/testing/ima_policy
+++ b/Documentation/ABI/testing/ima_policy
@@ -53,10 +53,7 @@ Description:
where 'imasig' is the original or the signature
format v2.
where 'modsig' is an appended signature,
- where 'sigv3' is the signature format v3. (Currently
- limited to fsverity digest based signatures
- stored in security.ima xattr. Requires
- specifying "digest_type=verity" first.)
+ where 'sigv3' is the signature format v3.
appraise_flag:= [check_blacklist] (deprecated)
Setting the check_blacklist flag is no longer necessary.
@@ -111,6 +108,9 @@ Description:
# NSFS_MAGIC
dont_measure fsmagic=0x6e736673
dont_appraise fsmagic=0x6e736673
+ # CONFIGFS_MAGIC
+ dont_measure fsmagic=0x62656570
+ dont_appraise fsmagic=0x62656570
measure func=BPRM_CHECK
measure func=FILE_MMAP mask=MAY_EXEC
@@ -186,6 +186,11 @@ Description:
appraise func=BPRM_CHECK digest_type=verity \
appraise_type=sigv3
+ Example of a regular IMA file hash 'appraise' rule requiring
+ signature version 3 format stored in security.ima xattr.
+
+ appraise func=BPRM_CHECK appraise_type=sigv3
+
All of these policy rules could, for example, be constrained
either based on a filesystem's UUID (fsuuid) or based on LSM
labels.
diff --git a/Documentation/ABI/testing/procfs-nfsd-reply_cache_stats b/Documentation/ABI/testing/procfs-nfsd-reply_cache_stats
new file mode 100644
index 000000000000..57ed5f8e6597
--- /dev/null
+++ b/Documentation/ABI/testing/procfs-nfsd-reply_cache_stats
@@ -0,0 +1,38 @@
+What: /proc/fs/nfsd/reply_cache_stats
+Date: March 2013
+KernelVersion: 3.10
+Contact: linux-nfs@vger.kernel.org
+Description:
+ Provides statistics for the NFS server duplicate reply
+ cache (DRC). The file contains one labeled field per
+ line. Each line has the form "field name:" followed by
+ whitespace and a decimal value.
+
+ Fields:
+
+ ======================= ====== ==========================
+ max entries u32 Upper bound on cache size
+ num entries u32 Current entry count
+ hash buckets u32 Number of hash buckets
+ mem usage s64 Bytes consumed by the DRC
+ cache hits s64 Requests answered from cache
+ cache misses s64 Requests not found in cache
+ not cached s64 Idempotent requests that
+ bypass the cache
+ payload misses s64 XID matched but request
+ checksum did not
+ longest chain len u32 Longest hash chain observed
+ cachesize at longest u32 Cache size when longest
+ chain was recorded
+ ======================= ====== ==========================
+
+ Counter fields (cache hits, cache misses, not cached,
+ payload misses, mem usage) are maintained with per-cpu
+ counters and may briefly show stale values under
+ concurrent load. There is no way to reset these
+ counters; consumers should compute rates by sampling
+ over time.
+
+ New fields may be appended in future kernels. Parsers
+ should match on field name, not line position.
+Users: nfs-utils (https://git.linux-nfs.org/?p=steved/nfs-utils.git)
diff --git a/Documentation/ABI/testing/sysfs-block-zram b/Documentation/ABI/testing/sysfs-block-zram
index 64c03010e951..1ea9018a627f 100644
--- a/Documentation/ABI/testing/sysfs-block-zram
+++ b/Documentation/ABI/testing/sysfs-block-zram
@@ -152,15 +152,15 @@ Description:
compression algorithm parameters.
What: /sys/block/zram<id>/compressed_writeback
-Date: Decemeber 2025
+Date: December 2025
Contact: Richard Chang <richardycc@google.com>
Description:
- The compressed_writeback device atrribute toggles compressed
+ The compressed_writeback device attribute toggles compressed
writeback feature.
What: /sys/block/zram<id>/writeback_batch_size
Date: November 2025
Contact: Sergey Senozhatsky <senozhatsky@chromium.org>
Description:
- The writeback_batch_size device atrribute sets the maximum
+ The writeback_batch_size device attribute sets the maximum
number of in-flight writeback operations.
diff --git a/Documentation/ABI/testing/sysfs-bus-coresight-devices-tpdm b/Documentation/ABI/testing/sysfs-bus-coresight-devices-tpdm
index f8016df64532..bc36ba32c900 100644
--- a/Documentation/ABI/testing/sysfs-bus-coresight-devices-tpdm
+++ b/Documentation/ABI/testing/sysfs-bus-coresight-devices-tpdm
@@ -278,3 +278,13 @@ Date: Aug 2025
KernelVersion 6.18
Contact: Mao Jinlong <quic_jinlmao@quicinc.com>
Description: (Read) Show hardware context information of device.
+
+What: /sys/bus/coresight/devices/<tpdm-name>/traceid
+Date: March 2026
+KernelVersion: 7.1
+Contact: Jie Gan <jie.gan@oss.qualcomm.com>
+Description:
+ (R) Show the trace ID that will appear in the trace stream
+ coming from this TPDM. The trace ID is inherited from the
+ connected TPDA device and is fixed for the lifetime of the
+ device. Returns -EINVAL if the device has not been enabled yet.
diff --git a/Documentation/ABI/testing/sysfs-bus-cxl b/Documentation/ABI/testing/sysfs-bus-cxl
index c80a1b5a03db..7352dbd70bc7 100644
--- a/Documentation/ABI/testing/sysfs-bus-cxl
+++ b/Documentation/ABI/testing/sysfs-bus-cxl
@@ -201,7 +201,8 @@ Description:
capability.
-What: /sys/bus/cxl/devices/{port,endpoint}X/parent_dport
+What: /sys/bus/cxl/devices/portX/parent_dport
+What: /sys/bus/cxl/devices/endpointX/parent_dport
Date: January, 2023
KernelVersion: v6.3
Contact: linux-cxl@vger.kernel.org
@@ -258,7 +259,8 @@ Description:
instance id of a given decoder resource.
-What: /sys/bus/cxl/devices/decoderX.Y/{start,size}
+What: /sys/bus/cxl/devices/decoderX.Y/start
+What: /sys/bus/cxl/devices/decoderX.Y/size
Date: June, 2021
KernelVersion: v5.14
Contact: linux-cxl@vger.kernel.org
@@ -297,7 +299,10 @@ Description:
Each entry in the list is a dport id.
-What: /sys/bus/cxl/devices/decoderX.Y/cap_{pmem,ram,type2,type3}
+What: /sys/bus/cxl/devices/decoderX.Y/cap_pmem
+What: /sys/bus/cxl/devices/decoderX.Y/cap_ram
+What: /sys/bus/cxl/devices/decoderX.Y/cap_type2
+What: /sys/bus/cxl/devices/decoderX.Y/cap_type3
Date: June, 2021
KernelVersion: v5.14
Contact: linux-cxl@vger.kernel.org
@@ -410,7 +415,8 @@ Description:
interleave_granularity).
-What: /sys/bus/cxl/devices/decoderX.Y/create_{pmem,ram}_region
+What: /sys/bus/cxl/devices/decoderX.Y/create_pmem_region
+What: /sys/bus/cxl/devices/decoderX.Y/create_ram_region
Date: May, 2022, January, 2023
KernelVersion: v6.0 (pmem), v6.3 (ram)
Contact: linux-cxl@vger.kernel.org
@@ -500,6 +506,7 @@ Description:
cache is present, the size indicates extended linear cache size
plus the CXL region size.
+
What: /sys/bus/cxl/devices/regionZ/extended_linear_cache_size
Date: October, 2025
KernelVersion: v6.19
@@ -508,6 +515,19 @@ Description:
(RO) The size of extended linear cache, if there is an extended
linear cache. Otherwise the attribute will not be visible.
+
+What: /sys/bus/cxl/devices/regionZ/locked
+Date: Mar, 2026
+KernelVersion: v7.1
+Contact: linux-cxl@vger.kernel.org
+Description:
+ (RO) The CXL driver has the capability to lock a region based on
+ a BIOS or platform dependent configuration. Regions created as
+ locked are never permitted to be destroyed. Resets to participating
+ decoders will not result in a region destroy and will not free the
+ decoder resources.
+
+
What: /sys/bus/cxl/devices/regionZ/mode
Date: January, 2023
KernelVersion: v6.3
diff --git a/Documentation/ABI/testing/sysfs-bus-dax b/Documentation/ABI/testing/sysfs-bus-dax
index b34266bfae49..60703fffa99e 100644
--- a/Documentation/ABI/testing/sysfs-bus-dax
+++ b/Documentation/ABI/testing/sysfs-bus-dax
@@ -151,3 +151,27 @@ Description:
memmap_on_memory parameter for memory_hotplug. This is
typically set on the kernel command line -
memory_hotplug.memmap_on_memory set to 'true' or 'force'."
+
+What: /sys/bus/dax/devices/daxX.Y/state
+Contact: nvdimm@lists.linux.dev
+Description:
+ (RW) Controls the state of the memory region.
+ Applies to all memory blocks associated with the device.
+ Only applies to dax_kmem devices.
+
+ Reading returns the current state; the writable states mirror
+ the per-block /sys/devices/system/memory/memoryX/state ABI::
+
+ "unplugged": memory blocks are not present
+ "online": memory is online, zone chosen by the kernel
+ "online_kernel": memory is online in ZONE_NORMAL
+ "online_movable": memory is online in ZONE_MOVABLE
+
+ "offline" (memory blocks are present but offline) may also be
+ reported - this happens when the device is bound while the
+ auto_online_blocks policy is "offline". It cannot be written,
+ as it's not useful and creates device destruction races.
+
+ A device can only be onlined from the "unplugged" state, so a
+ device must be returned to "unplugged" before it can be onlined
+ into a different state.
diff --git a/Documentation/ABI/testing/sysfs-bus-i3c b/Documentation/ABI/testing/sysfs-bus-i3c
index c1e048957a01..19f5cf8b1b11 100644
--- a/Documentation/ABI/testing/sysfs-bus-i3c
+++ b/Documentation/ABI/testing/sysfs-bus-i3c
@@ -172,3 +172,23 @@ Description:
the automatic retries. Exist only when I3C constroller supports
this retry on nack feature.
+What: /sys/bus/i3c/devices/i3c-<bus-id>/do_daa
+KernelVersion: 7.0
+Contact: linux-i3c@vger.kernel.org
+Description:
+ Write-only attribute that triggers a Dynamic Address Assignment
+ (DAA) procedure which discovers new I3C devices on the bus.
+ Writing a boolean true value (1, y, yes, true, on) to this
+ attribute causes the master controller to perform DAA, which
+ includes broadcasting an ENTDAA (Enter Dynamic Address Assignment)
+ Common Command Code (CCC) on the bus. Writing a false value
+ returns -EINVAL.
+
+ This is useful for discovering I3C devices that were not present
+ during initial bus initialization and are unable to issue
+ Hot-Join. Only devices without a currently assigned dynamic address
+ will respond to the ENTDAA broadcast and be assigned addresses.
+
+ Note that this mechanism is distinct from Hot-Join, since this is
+ controller-initiated discovery, while Hot-Join is device-initiated
+ method to provoke controller discovery procedure.
diff --git a/Documentation/ABI/testing/sysfs-bus-iio b/Documentation/ABI/testing/sysfs-bus-iio
index 5f87dcee78f7..a4f5595722ad 100644
--- a/Documentation/ABI/testing/sysfs-bus-iio
+++ b/Documentation/ABI/testing/sysfs-bus-iio
@@ -162,10 +162,11 @@ Contact: linux-iio@vger.kernel.org
Description:
Raw (unscaled) differential voltage measurement equivalent to
channel Y - channel Z where these channel numbers apply to the
- physically equivalent inputs when non differential readings are
- separately available. In differential only parts, then all that
- is required is a consistent labeling. Units after application
- of scale and offset are millivolts.
+ physically equivalent inputs when non-differential readings are
+ separately available. Even though differential-only parts had
+ been merely required to have consistent channel labeling, this
+ ABI is preferred over the non-differential one for those chips.
+ Units after application of scale and offset are millivolts.
What: /sys/bus/iio/devices/iio:deviceX/in_altvoltageY_rms_raw
KernelVersion: 6.18
@@ -507,6 +508,8 @@ What: /sys/bus/iio/devices/iio:deviceX/in_intensity_red_scale
What: /sys/bus/iio/devices/iio:deviceX/in_intensity_green_scale
What: /sys/bus/iio/devices/iio:deviceX/in_intensity_blue_scale
What: /sys/bus/iio/devices/iio:deviceX/in_concentration_co2_scale
+What: /sys/bus/iio/devices/iio:deviceX/in_volumeflow_scale
+What: /sys/bus/iio/devices/iio:deviceX/in_volumeflowY_scale
KernelVersion: 2.6.35
Contact: linux-iio@vger.kernel.org
Description:
@@ -764,10 +767,14 @@ Contact: linux-iio@vger.kernel.org
Description:
Specifies the output powerdown mode.
DAC output stage is disconnected from the amplifier and
+ 500ohm_to_gnd: connected to ground via a 500Ohm resistor,
1kohm_to_gnd: connected to ground via an 1kOhm resistor,
2.5kohm_to_gnd: connected to ground via a 2.5kOhm resistor,
+ 3.85kohm_to_gnd: connected to ground via a 3.85kOhm resistor,
6kohm_to_gnd: connected to ground via a 6kOhm resistor,
7.7kohm_to_gnd: connected to ground via a 7.7kOhm resistor,
+ 10kohm_to_gnd: connected to ground via a 10kOhm resistor,
+ 16kohm_to_gnd: connected to ground via a 16kOhm resistor,
20kohm_to_gnd: connected to ground via a 20kOhm resistor,
32kohm_to_gnd: connected to ground via a 32kOhm resistor,
42kohm_to_gnd: connected to ground via a 42kOhm resistor,
@@ -914,7 +921,7 @@ Description:
Note the driver will assume the last p events requested are
to be enabled where p is how many it supports (which may vary
- depending on the exact set requested. So if you want to be
+ depending on the exact set requested). So if you want to be
sure you have set what you think you have, check the contents of
these attributes after everything is configured. Drivers may
have to buffer any parameters so that they are consistent when
@@ -970,7 +977,7 @@ Description:
Note the driver will assume the last p events requested are
to be enabled where p is however many it supports (which may
- vary depending on the exact set requested. So if you want to be
+ vary depending on the exact set requested). So if you want to be
sure you have set what you think you have, check the contents of
these attributes after everything is configured. Drivers may
have to buffer any parameters so that they are consistent when
@@ -1428,7 +1435,7 @@ KernelVersion: 2.6.35
Contact: linux-iio@vger.kernel.org
Description:
The name of the trigger source being used, as per string given
- in /sys/class/iio/triggerY/name.
+ in /sys/bus/iio/devices/triggerY/name.
What: /sys/bus/iio/devices/iio:deviceX/bufferY/length
KernelVersion: 5.11
@@ -1510,21 +1517,24 @@ Contact: linux-iio@vger.kernel.org
Description:
Description of the scan element data storage within the buffer
and hence the form in which it is read from user-space.
- Form is [be|le]:[s|u]bits/storagebits[>>shift].
- be or le specifies big or little endian. s or u specifies if
- signed (2's complement) or unsigned. bits is the number of bits
- of data and storagebits is the space (after padding) that it
- occupies in the buffer. shift if specified, is the shift that
- needs to be applied prior to masking out unused bits. Some
- devices put their data in the middle of the transferred elements
- with additional information on both sides. Note that some
- devices will have additional information in the unused bits
- so to get a clean value, the bits value must be used to mask
- the buffer output value appropriately. The storagebits value
- also specifies the data alignment. So s48/64>>2 will be a
- signed 48 bit integer stored in a 64 bit location aligned to
- a 64 bit boundary. To obtain the clean value, shift right 2
- and apply a mask to zero the top 16 bits of the result.
+ Form is [be|le]:[f|s|u]bits/storagebits[>>shift].
+ be or le specifies big or little endian. f means floating-point
+ (IEEE 754 binary format), s means signed (2's complement), u means
+ unsigned. bits is the number of bits of data and storagebits is the
+ space (after padding) that it occupies in the buffer; when using a
+ floating-point format, bits must be one of the width values defined
+ in the IEEE 754 standard for binary interchange formats (e.g. 16
+ indicates the binary16 format for half-precision numbers). shift,
+ if specified, is the shift that needs to be applied prior to
+ masking out unused bits. Some devices put their data in the middle
+ of the transferred elements with additional information on both
+ sides. Note that some devices will have additional information in
+ the unused bits, so to get a clean value the bits value must be
+ used to mask the buffer output value appropriately. The storagebits
+ value also specifies the data alignment. So s48/64>>2 will be a
+ signed 48-bit integer stored in a 64-bit location aligned to a
+ 64-bit boundary. To obtain the clean value, shift right 2 and apply
+ a mask to zero the top 16 bits of the result.
For other storage combinations this attribute will be extended
appropriately.
@@ -1752,6 +1762,21 @@ Description:
measurement from channel Y. Units after application of scale and
offset are milliamps.
+What: /sys/bus/iio/devices/iio:deviceX/in_rot_quaternionaxis_raw
+KernelVersion: 7.1
+Contact: linux-iio@vger.kernel.org
+Description:
+ Raw value of {x, y, z} components of the quaternion vector. These
+ components represent the axis about which a rotation occurs, and are
+ subject to the following constraints:
+
+ - the quaternion vector is normalized, i.e. w^2 + x^2 + y^2 + z^2 = 1
+ - the rotation angle is within the [-pi, pi] range, i.e. the w
+ component (which represents the amount of rotation) is non-negative
+
+ These constraints allow the w value to be calculated from the other
+ components: w = sqrt(1 - (x^2 + y^2 + z^2)).
+
What: /sys/.../iio:deviceX/in_energy_en
What: /sys/.../iio:deviceX/in_distance_en
What: /sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_en
@@ -1959,6 +1984,23 @@ Description:
Raw (unscaled no offset etc.) resistance reading.
Units after application of scale and offset are ohms.
+What: /sys/bus/iio/devices/iio:deviceX/in_coverageY_raw
+KernelVersion: 7.2
+Contact: linux-iio@vger.kernel.org
+Description:
+ Raw (unscaled no offset etc.) coverage reading. Used for sensors
+ that report fractional coverage as a percentage, such as leak
+ detectors where the value represents what portion of the sensing
+ element is wetted. Units after application of scale and offset are
+ percent.
+
+What: /sys/bus/iio/devices/iio:deviceX/in_coverageY_scale
+KernelVersion: 7.2
+Contact: linux-iio@vger.kernel.org
+Description:
+ Scale to be applied to in_coverageY_raw to obtain coverage
+ in percent.
+
What: /sys/bus/iio/devices/iio:deviceX/heater_enable
KernelVersion: 4.1.0
Contact: linux-iio@vger.kernel.org
@@ -2458,3 +2500,12 @@ Description:
seconds, expressed as:
- a range specified as "[min step max]"
+
+What: /sys/bus/iio/devices/iio:deviceX/in_volumeflow_raw
+What: /sys/bus/iio/devices/iio:deviceX/in_volumeflowY_raw
+KernelVersion: 7.3
+Contact: linux-iio@vger.kernel.org
+Description:
+ Raw (unscaled) volumetric flow rate reading from the channel.
+ To convert to standard units (cubic metres per second, m^3/s)
+ apply the channel's _scale (and _offset, when present).
diff --git a/Documentation/ABI/testing/sysfs-bus-iio-adc-ad7192 b/Documentation/ABI/testing/sysfs-bus-iio-adc-ad7192
index 28be1cabf112..d44eb5f8728b 100644
--- a/Documentation/ABI/testing/sysfs-bus-iio-adc-ad7192
+++ b/Documentation/ABI/testing/sysfs-bus-iio-adc-ad7192
@@ -16,7 +16,7 @@ Description:
In bridge applications, such as strain gauges and load cells,
the bridge itself consumes the majority of the current in the
system. To minimize the current consumption of the system,
- the bridge can be disconnected (when it is not being used
+ the bridge can be disconnected (when it is not being used)
using the bridge_switch_en attribute.
What: /sys/bus/iio/devices/iio:deviceX/in_voltage2-voltage2_shorted_raw
diff --git a/Documentation/ABI/testing/sysfs-bus-iio-flow b/Documentation/ABI/testing/sysfs-bus-iio-flow
new file mode 100644
index 000000000000..fece2ecfa994
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-bus-iio-flow
@@ -0,0 +1,21 @@
+What: /sys/bus/iio/devices/iio:deviceX/in_volumeflow_medium
+What: /sys/bus/iio/devices/iio:deviceX/in_volumeflowY_medium
+KernelVersion: 7.3
+Contact: linux-iio@vger.kernel.org
+Description:
+ The calibration medium the flow sensor uses to convert its
+ raw reading into a volumetric flow rate. Liquid flow sensors
+ are factory-calibrated per medium, so the selected medium has
+ to match the fluid actually flowing through the sensor for the
+ reported flow rate to be correct.
+
+ Reading returns the currently active medium; writing one of the
+ strings listed in in_volumeflow_medium_available selects it.
+
+What: /sys/bus/iio/devices/iio:deviceX/in_volumeflow_medium_available
+What: /sys/bus/iio/devices/iio:deviceX/in_volumeflowY_medium_available
+KernelVersion: 7.3
+Contact: linux-iio@vger.kernel.org
+Description:
+ Space separated list of the calibration media supported by the
+ device, e.g. "water ipa".
diff --git a/Documentation/ABI/testing/sysfs-bus-iio-frequency b/Documentation/ABI/testing/sysfs-bus-iio-frequency
new file mode 100644
index 000000000000..46075aee7804
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-bus-iio-frequency
@@ -0,0 +1,11 @@
+What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency_resolution
+KernelVersion: 3.4.0
+Contact: linux-iio@vger.kernel.org
+Description:
+ Stores channel Y frequency resolution/channel spacing in Hz for PLL
+ devices. The given value directly influences the operating mode when
+ fractional-N synthesis is required, as it derives values for
+ configurable modulus parameters used in the calculation of the output
+ frequency. It is assumed that the algorithm used to compute the various
+ dividers is able to generate proper values for multiples of the channel
+ spacing.
diff --git a/Documentation/ABI/testing/sysfs-bus-iio-frequency-adf4350 b/Documentation/ABI/testing/sysfs-bus-iio-frequency-adf4350
index 1254457a726e..76987a119feb 100644
--- a/Documentation/ABI/testing/sysfs-bus-iio-frequency-adf4350
+++ b/Documentation/ABI/testing/sysfs-bus-iio-frequency-adf4350
@@ -1,13 +1,3 @@
-What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency_resolution
-KernelVersion: 3.4.0
-Contact: linux-iio@vger.kernel.org
-Description:
- Stores channel Y frequency resolution/channel spacing in Hz.
- The value given directly influences the MODULUS used by
- the fractional-N PLL. It is assumed that the algorithm
- that is used to compute the various dividers, is able to
- generate proper values for multiples of channel spacing.
-
What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_refin_frequency
KernelVersion: 3.4.0
Contact: linux-iio@vger.kernel.org
diff --git a/Documentation/ABI/testing/sysfs-bus-nvdimm b/Documentation/ABI/testing/sysfs-bus-nvdimm
index 64eb8f4c6a41..46dafd8482b9 100644
--- a/Documentation/ABI/testing/sysfs-bus-nvdimm
+++ b/Documentation/ABI/testing/sysfs-bus-nvdimm
@@ -48,7 +48,8 @@ What: /sys/bus/nd/devices/nmemX/cxl/id
Date: November 2022
KernelVersion: 6.2
Contact: Dave Jiang <dave.jiang@intel.com>
-Description: (RO) Show the id (serial) of the device. This is CXL specific.
+Description: (RO) Show the id (serial) of the device, formatted as an
+ unsigned 64-bit decimal value. This is CXL specific.
What: /sys/bus/nd/devices/nmemX/cxl/provider
Date: November 2022
diff --git a/Documentation/ABI/testing/sysfs-bus-pci b/Documentation/ABI/testing/sysfs-bus-pci
index b767db2c52cb..55ea1db749a1 100644
--- a/Documentation/ABI/testing/sysfs-bus-pci
+++ b/Documentation/ABI/testing/sysfs-bus-pci
@@ -171,7 +171,7 @@ Description:
all devices attached through the subordinate bus of a specific
bridge device, writing 1 to this will try to do it. This will
affect all devices attached to the system through this bridge
- similiar to writing 1 to their individual "reset" file, so use
+ similar to writing 1 to their individual "reset" file, so use
with caution.
What: /sys/bus/pci/devices/.../vpd
diff --git a/Documentation/ABI/testing/sysfs-bus-pci-drivers-btintel_pcie b/Documentation/ABI/testing/sysfs-bus-pci-drivers-btintel_pcie
new file mode 100644
index 000000000000..cceec6ac96bc
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-bus-pci-drivers-btintel_pcie
@@ -0,0 +1,15 @@
+What: /sys/bus/pci/devices/<BDF>/vendor_reset
+Date: 22-Jul-2026
+KernelVersion: 6.17
+Contact: linux-bluetooth@vger.kernel.org
+Description: This read-write attribute allows userspace to trigger a
+ Product Level Device Reset (PLDR) on Intel PCIe Bluetooth
+ controllers. Reading the attribute displays the supported
+ reset type. Writing integer 0 triggers PLDR. Any other
+ input is rejected with -EINVAL.
+
+ PLDR resets the entire on-chip platform shared between
+ Bluetooth and WiFi. This means any driver attached to
+ the WiFi device that shares hardware with this Bluetooth
+ device will be released, the platform will be reset, and
+ both the Bluetooth and WiFi devices will be re-probed.
diff --git a/Documentation/ABI/testing/sysfs-bus-pci-drivers-xhci_hcd b/Documentation/ABI/testing/sysfs-bus-pci-drivers-xhci_hcd
index d10e6de3adb2..991765d84201 100644
--- a/Documentation/ABI/testing/sysfs-bus-pci-drivers-xhci_hcd
+++ b/Documentation/ABI/testing/sysfs-bus-pci-drivers-xhci_hcd
@@ -22,7 +22,7 @@ Description:
Reading this attribute gives the state of the DbC. It
can be one of the following states: disabled, enabled,
- initialized, connected, configured and stalled.
+ initialized, connected, configured or suspended.
What: /sys/bus/pci/drivers/xhci_hcd/.../dbc_idVendor
Date: March 2023
diff --git a/Documentation/ABI/testing/sysfs-bus-usb b/Documentation/ABI/testing/sysfs-bus-usb
index af9b653422f1..baf4bf6d32ee 100644
--- a/Documentation/ABI/testing/sysfs-bus-usb
+++ b/Documentation/ABI/testing/sysfs-bus-usb
@@ -293,7 +293,7 @@ Description:
Supported values are 0 - 15.
More information on how besl values map to microseconds can be found in
- USB 2.0 ECN Errata for Link Power Management, section 4.10)
+ USB 2.0 ECN Errata for Link Power Management, section 4.10
What: /sys/bus/usb/devices/.../rx_lanes
Date: March 2018
diff --git a/Documentation/ABI/testing/sysfs-class-firmware b/Documentation/ABI/testing/sysfs-class-firmware
index fba87a55f3ca..44ca1b78a0e1 100644
--- a/Documentation/ABI/testing/sysfs-class-firmware
+++ b/Documentation/ABI/testing/sysfs-class-firmware
@@ -1,7 +1,7 @@
What: /sys/class/firmware/.../data
Date: July 2022
KernelVersion: 5.19
-Contact: Russ Weight <russ.weight@linux.dev>
+Contact: driver-core@lists.linux.dev
Description: The data sysfs file is used for firmware-fallback and for
firmware uploads. Cat a firmware image to this sysfs file
after you echo 1 to the loading sysfs file. When the firmware
@@ -13,7 +13,7 @@ Description: The data sysfs file is used for firmware-fallback and for
What: /sys/class/firmware/.../cancel
Date: July 2022
KernelVersion: 5.19
-Contact: Russ Weight <russ.weight@linux.dev>
+Contact: driver-core@lists.linux.dev
Description: Write-only. For firmware uploads, write a "1" to this file to
request that the transfer of firmware data to the lower-level
device be canceled. This request will be rejected (EBUSY) if
@@ -23,7 +23,7 @@ Description: Write-only. For firmware uploads, write a "1" to this file to
What: /sys/class/firmware/.../error
Date: July 2022
KernelVersion: 5.19
-Contact: Russ Weight <russ.weight@linux.dev>
+Contact: driver-core@lists.linux.dev
Description: Read-only. Returns a string describing a failed firmware
upload. This string will be in the form of <STATUS>:<ERROR>,
where <STATUS> will be one of the status strings described
@@ -37,7 +37,7 @@ Description: Read-only. Returns a string describing a failed firmware
What: /sys/class/firmware/.../loading
Date: July 2022
KernelVersion: 5.19
-Contact: Russ Weight <russ.weight@linux.dev>
+Contact: driver-core@lists.linux.dev
Description: The loading sysfs file is used for both firmware-fallback and
for firmware uploads. Echo 1 onto the loading file to indicate
you are writing a firmware file to the data sysfs node. Echo
@@ -49,7 +49,7 @@ Description: The loading sysfs file is used for both firmware-fallback and
What: /sys/class/firmware/.../remaining_size
Date: July 2022
KernelVersion: 5.19
-Contact: Russ Weight <russ.weight@linux.dev>
+Contact: driver-core@lists.linux.dev
Description: Read-only. For firmware upload, this file contains the size
of the firmware data that remains to be transferred to the
lower-level device driver. The size value is initialized to
@@ -62,7 +62,7 @@ Description: Read-only. For firmware upload, this file contains the size
What: /sys/class/firmware/.../status
Date: July 2022
KernelVersion: 5.19
-Contact: Russ Weight <russ.weight@linux.dev>
+Contact: driver-core@lists.linux.dev
Description: Read-only. Returns a string describing the current status of
a firmware upload. The string will be one of the following:
idle, "receiving", "preparing", "transferring", "programming".
@@ -70,7 +70,7 @@ Description: Read-only. Returns a string describing the current status of
What: /sys/class/firmware/.../timeout
Date: July 2022
KernelVersion: 5.19
-Contact: Russ Weight <russ.weight@linux.dev>
+Contact: driver-core@lists.linux.dev
Description: This file supports the timeout mechanism for firmware
fallback. This file has no affect on firmware uploads. For
more information on timeouts please see the documentation
diff --git a/Documentation/ABI/testing/sysfs-class-hwmon b/Documentation/ABI/testing/sysfs-class-hwmon
index cfd0d0bab483..b185bdfc7186 100644
--- a/Documentation/ABI/testing/sysfs-class-hwmon
+++ b/Documentation/ABI/testing/sysfs-class-hwmon
@@ -27,6 +27,20 @@ Description:
Some devices have a variable update rate or interval.
This attribute can be used to change it to the desired value.
+What: /sys/class/hwmon/hwmonX/update_interval_us
+Description:
+ The interval at which the chip will update readings,
+ expressed in microseconds.
+ Unit: microsecond
+
+ RW
+
+ Some devices have a variable update rate or interval and
+ require finer-than-millisecond control.
+ This attribute can be used to change it to the desired value.
+ Drivers implementing this attribute should also implement
+ update_interval for millisecond-based userspace interfaces.
+
What: /sys/class/hwmon/hwmonX/inY_min
Description:
Voltage min value.
diff --git a/Documentation/ABI/testing/sysfs-class-ieee80211-rtw89 b/Documentation/ABI/testing/sysfs-class-ieee80211-rtw89
new file mode 100644
index 000000000000..7dfdce08a42f
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-class-ieee80211-rtw89
@@ -0,0 +1,24 @@
+What: /sys/class/ieee80211/phyX/rtw89_usb/serial_number
+Date: May 2026
+Contact: Johnson Tsai <wenjie.tsai@realtek.com>, linux-wireless@vger.kernel.org
+Description: (Read) Serial number burned into EFUSE of the RTL8852CU-based
+ USB Wi-Fi adapter. Only present on devices that set the
+ RTW89_QUIRK_HW_INFO_SYSFS quirk (currently VID 0x28de /
+ PID 0x2432).
+
+ Format: %10phN (5 raw bytes printed as 10 lowercase hex
+ digits, no separators).
+
+ Example: 3642000123
+
+What: /sys/class/ieee80211/phyX/rtw89_usb/uuid
+Date: May 2026
+Contact: Johnson Tsai <wenjie.tsai@realtek.com>, linux-wireless@vger.kernel.org
+Description: (Read) UUID burned into EFUSE of the RTL8852CU-based USB Wi-Fi
+ adapter. Only present on devices that set the
+ RTW89_QUIRK_HW_INFO_SYSFS quirk (currently VID 0x28de /
+ PID 0x2432).
+
+ Format: %pUb (RFC 4122 UUID in lowercase with hyphens).
+
+ Example: aaec2b7c-0a55-4727-8de0-b30febccbbaa
diff --git a/Documentation/ABI/testing/sysfs-class-issei b/Documentation/ABI/testing/sysfs-class-issei
new file mode 100644
index 000000000000..73a01f4627cb
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-class-issei
@@ -0,0 +1,73 @@
+What: /sys/class/issei/
+Date: June 2026
+KernelVersion: 7.2
+Contact: Alexander Usyskin <alexander.usyskin@intel.com>
+Description:
+ The issei/ class sub-directory belongs to issei device class
+
+What: /sys/class/issei/issei<N>/
+Date: June 2026
+KernelVersion: 7.2
+Contact: Alexander Usyskin <alexander.usyskin@intel.com>
+Description:
+ The /sys/class/issei/isseiN directory is created for
+ each probed issei device
+
+What: /sys/class/issei/issei<N>/fw_ver
+Date: June 2026
+KernelVersion: 7.2
+Contact: Alexander Usyskin <alexander.usyskin@intel.com>
+Description: Display the ISSE firmware version.
+
+ The version of the ISSE firmware is in format:
+ <major>.<minor>.<milestone>.<build_no>.
+
+What: /sys/class/issei/issei<N>/fw_clients
+Date: June 2026
+KernelVersion: 7.2
+Contact: Alexander Usyskin <alexander.usyskin@intel.com>
+Description:
+ The fw_clients directory stores all firmware clients on the
+ probed issei device
+
+What: /sys/class/issei/issei<N>/fw_clients/<M>
+Date: June 2026
+KernelVersion: 7.2
+Contact: Alexander Usyskin <alexander.usyskin@intel.com>
+Description:
+ The /sys/class/issei/isseiN/fw_client/M directory is created for
+ each firmware client on the probed issei device where M is the
+ id of firmware client.
+
+What: /sys/class/issei/issei<N>/fw_clients/<M>/id
+Date: June 2026
+KernelVersion: 7.2
+Contact: Alexander Usyskin <alexander.usyskin@intel.com>
+Description: Displays id of the firmware client
+
+ The id of firmware client is it's number in client enumeration order,
+ starting from 1.
+
+What: /sys/class/issei/issei<N>/fw_clients/<M>/uuid
+Date: June 2026
+KernelVersion: 7.2
+Contact: Alexander Usyskin <alexander.usyskin@intel.com>
+Description: Displays uuid of the firmware client
+
+ The universally unique identifier of the firmware client
+
+What: /sys/class/issei/issei<N>/fw_clients/<M>/mtu
+Date: June 2026
+KernelVersion: 7.2
+Contact: Alexander Usyskin <alexander.usyskin@intel.com>
+Description: Displays maximum transmission unit of the firmware client
+
+ The maximum transmission unit (in bytes) used by the firmware client.
+
+What: /sys/class/issei/issei<N>/fw_clients/<M>/ver
+Date: June 2026
+KernelVersion: 7.2
+Contact: Alexander Usyskin <alexander.usyskin@intel.com>
+Description: Displays version of the firmware client
+
+ The version of the firmware client
diff --git a/Documentation/ABI/testing/sysfs-class-led b/Documentation/ABI/testing/sysfs-class-led
index 0313b82644f2..d4c918cc11a1 100644
--- a/Documentation/ABI/testing/sysfs-class-led
+++ b/Documentation/ABI/testing/sysfs-class-led
@@ -22,8 +22,8 @@ Description:
For additional details please refer to
Documentation/leds/leds-class-multicolor.rst.
- The value is between 0 and
- /sys/class/leds/<led>/max_brightness.
+ The value is between 0 and /sys/class/leds/<led>/max_brightness
+ and is represented by as a decimal.
Writing 0 to this file clears active trigger.
diff --git a/Documentation/ABI/testing/sysfs-class-led-multicolor b/Documentation/ABI/testing/sysfs-class-led-multicolor
index 16fc827b10cb..62ce58f393d6 100644
--- a/Documentation/ABI/testing/sysfs-class-led-multicolor
+++ b/Documentation/ABI/testing/sysfs-class-led-multicolor
@@ -16,9 +16,22 @@ Date: March 2020
KernelVersion: 5.9
Contact: Dan Murphy <dmurphy@ti.com>
Description: read/write
- This file contains array of integers. Order of components is
- described by the multi_index array. The maximum intensity should
- not exceed /sys/class/leds/<led>/max_brightness.
+ This file contains an array of integers. The order of components
+ is described by the multi_index array. The maximum intensity value
+ supported by each color component is described by the multi_max_intensity
+ file. Writing intensity values larger than the maximum value of a
+ given color component will result in those values being clamped.
+
+ For additional details please refer to
+ Documentation/leds/leds-class-multicolor.rst.
+
+What: /sys/class/leds/<led>/multi_max_intensity
+Date: May 2026
+KernelVersion: 7.2
+Contact: Armin Wolf <W_Armin@gmx.de>
+Description: read
+ This file contains an array of integers describing the maximum
+ intensity value for each intensity component.
For additional details please refer to
Documentation/leds/leds-class-multicolor.rst.
diff --git a/Documentation/ABI/testing/sysfs-class-power b/Documentation/ABI/testing/sysfs-class-power
index 4b21d5d23251..5641f1fd5fd6 100644
--- a/Documentation/ABI/testing/sysfs-class-power
+++ b/Documentation/ABI/testing/sysfs-class-power
@@ -525,7 +525,7 @@ Description:
Valid values:
"Unknown", "NiMH", "Li-ion", "Li-poly", "LiFe",
- "NiCd", "LiMn"
+ "NiCd", "LiMn", "PbAc", "NiZn", "RAM", "ZnAr"
What: /sys/class/power_supply/<supply_name>/voltage_avg,
@@ -675,7 +675,8 @@ Description:
Valid values:
"Unknown", "SDP", "DCP", "CDP", "ACA", "C", "PD",
- "PD_DRP", "PD_PPS", "BrickID"
+ "PD_DRP", "PD_PPS", "BrickID", "PD_SPR_AVS",
+ "PD_PPS_SPR_AVS"
**Device Specific Properties**
diff --git a/Documentation/ABI/testing/sysfs-class-power-bd71828 b/Documentation/ABI/testing/sysfs-class-power-bd71828
new file mode 100644
index 000000000000..f9a325e005f3
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-class-power-bd71828
@@ -0,0 +1,13 @@
+What: /sys/class/power_supply/bd71828_ac/auto_dcin_limit
+Description:
+ Enable/Disable automatic management of input current limit
+ (ILIM_DCIN_EN bit).
+
+ Possible values are:
+
+ ============ ===========================================
+ 1 automatic adjustment of input current limit
+ 0 no adjustment of input current limit. This
+ helps for more unusual power sources like
+ solar modules.
+ ============ ===========================================
diff --git a/Documentation/ABI/testing/sysfs-class-reboot-mode-reboot_modes b/Documentation/ABI/testing/sysfs-class-reboot-mode-reboot_modes
new file mode 100644
index 000000000000..4306966b7fcc
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-class-reboot-mode-reboot_modes
@@ -0,0 +1,39 @@
+What: /sys/class/reboot-mode/<driver>/reboot_modes
+Date: March 2026(TBD)
+KernelVersion: TBD
+Contact: linux-pm@vger.kernel.org
+Description:
+ This interface exposes the reboot-mode arguments
+ registered with the reboot-mode framework. It is
+ a read-only interface and provides a space
+ separated list of reboot-mode arguments supported
+ on the current platform.
+ Example:
+
+ recovery fastboot bootloader
+
+ The exact sysfs path may vary depending on the
+ name of the driver that registers the arguments.
+ Example::
+
+ /sys/class/reboot-mode/nvmem-reboot-mode/reboot_modes
+ /sys/class/reboot-mode/syscon-reboot-mode/reboot_modes
+ /sys/class/reboot-mode/qcom-pon/reboot_modes
+
+ The supported arguments can be used by userspace to
+ invoke device reset using the standard reboot() system
+ call interface, with the "argument" as string to ``*arg``
+ parameter along with ``LINUX_REBOOT_CMD_RESTART2``.
+
+ A driver can expose the supported arguments by
+ registering them with the reboot-mode framework
+ using the property names that follow the
+ mode-<argument> format.
+ Example:
+
+ mode-bootloader, mode-recovery
+
+ This attribute is useful for scripts or initramfs
+ logic that need to programmatically determine
+ which reboot-mode arguments are valid before
+ triggering a reboot.
diff --git a/Documentation/ABI/testing/sysfs-class-spi-master b/Documentation/ABI/testing/sysfs-class-spi-master
new file mode 100644
index 000000000000..0a524fcd96d2
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-class-spi-master
@@ -0,0 +1,34 @@
+What: /sys/class/spi_master/spiB/new_device
+Date: July 2026
+KernelVersion: 7.3
+Contact: linux-spi@vger.kernel.org
+Description: (WO) Instantiate a new SPI device on bus B, where B
+ is the bus number (0, 1, 2, ...). Takes parameters
+ in the format:
+
+ <modalias> <chip_select> [<max_speed_hz> [<mode>]]
+
+ where modalias is the driver name, chip_select is the
+ CS line number, and max_speed_hz and mode are optional.
+
+ The device can later be removed with delete_device.
+
+ Only devices created via this interface can be removed
+ with delete_device; platform and DT devices are not
+ affected.
+
+ Example:
+ # echo spidev 0 > /sys/class/spi_master/spi0/new_device
+ # echo spidev 0 10000000 > /sys/class/spi_master/spi0/new_device
+ # echo spidev 0 10000000 3 > /sys/class/spi_master/spi0/new_device
+
+What: /sys/class/spi_master/spiB/delete_device
+Date: July 2026
+KernelVersion: 7.3
+Contact: linux-spi@vger.kernel.org
+Description: (WO) Remove a SPI device previously created via
+ new_device. Takes a single parameter: the chip select
+ number of the device to remove.
+
+ Example:
+ # echo 0 > /sys/class/spi_master/spi0/delete_device
diff --git a/Documentation/ABI/testing/sysfs-devices-faux-tdx-host b/Documentation/ABI/testing/sysfs-devices-faux-tdx-host
new file mode 100644
index 000000000000..c9cb273abf32
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-devices-faux-tdx-host
@@ -0,0 +1,26 @@
+What: /sys/devices/faux/tdx_host/version
+Contact: linux-coco@lists.linux.dev
+Description: (RO) Report the version of the loaded TDX module.
+ Formatted as "major.minor.update". Used by TDX module
+ update tooling. Example: "1.2.03".
+
+What: /sys/devices/faux/tdx_host/seamldr_version
+Contact: linux-coco@lists.linux.dev
+Description: (RO) Report the version of the loaded P-SEAMLDR.
+ Formatted as a TDX module version. Used by TDX module
+ update tooling.
+
+What: /sys/devices/faux/tdx_host/num_remaining_updates
+Contact: linux-coco@lists.linux.dev
+Description: (RO) Report the number of remaining updates. TDX maintains a
+ log about each TDX module that has been loaded. This log has
+ a finite size, which limits the number of TDX module updates
+ that can be performed.
+
+ After each successful update, the number reduces by one. Once it
+ reaches zero, further updates will fail until next reboot. The
+ number is always zero if the P-SEAMLDR doesn't support updates.
+
+ See Intel Trust Domain Extensions - SEAM Loader (SEAMLDR)
+ Interface Specification, Chapter "SEAMLDR_INFO" and Chapter
+ "SEAMLDR.INSTALL" for more information.
diff --git a/Documentation/ABI/testing/sysfs-devices-platform-stratix10-rsu b/Documentation/ABI/testing/sysfs-devices-platform-stratix10-rsu
index ee253b033280..b93341e4471d 100644
--- a/Documentation/ABI/testing/sysfs-devices-platform-stratix10-rsu
+++ b/Documentation/ABI/testing/sysfs-devices-platform-stratix10-rsu
@@ -172,3 +172,61 @@ Contact: Richard Gong <richard.gong@linux.intel.com>
Description:
(RO) max retry parameter is stored in the firmware
decision IO section, as a byte located at offset 0x18c.
+
+What: /sys/devices/platform/stratix10-rsu.0/size0
+Date: May 2026
+KernelVersion: 7.1
+Contact: Tze Yee Ng <tze.yee.ng@altera.com>
+Description:
+ (RO) Flash size in bytes for QSPI device 0 (32-bit hex, one
+ line). EIO if unavailable.
+
+What: /sys/devices/platform/stratix10-rsu.0/size1
+Date: May 2026
+KernelVersion: 7.1
+Contact: Tze Yee Ng <tze.yee.ng@altera.com>
+Description:
+ (RO) Like size0 for device 1.
+
+What: /sys/devices/platform/stratix10-rsu.0/size2
+Date: May 2026
+KernelVersion: 7.1
+Contact: Tze Yee Ng <tze.yee.ng@altera.com>
+Description:
+ (RO) Like size0 for device 2.
+
+What: /sys/devices/platform/stratix10-rsu.0/size3
+Date: May 2026
+KernelVersion: 7.1
+Contact: Tze Yee Ng <tze.yee.ng@altera.com>
+Description:
+ (RO) Like size0 for device 3.
+
+What: /sys/devices/platform/stratix10-rsu.0/erase_size0
+Date: May 2026
+KernelVersion: 7.1
+Contact: Tze Yee Ng <tze.yee.ng@altera.com>
+Description:
+ (RO) Erase size in bytes for QSPI device 0 (32-bit hex, one
+ line). EIO if unavailable.
+
+What: /sys/devices/platform/stratix10-rsu.0/erase_size1
+Date: May 2026
+KernelVersion: 7.1
+Contact: Tze Yee Ng <tze.yee.ng@altera.com>
+Description:
+ (RO) Like erase_size0 for device 1.
+
+What: /sys/devices/platform/stratix10-rsu.0/erase_size2
+Date: May 2026
+KernelVersion: 7.1
+Contact: Tze Yee Ng <tze.yee.ng@altera.com>
+Description:
+ (RO) Like erase_size0 for device 2.
+
+What: /sys/devices/platform/stratix10-rsu.0/erase_size3
+Date: May 2026
+KernelVersion: 7.1
+Contact: Tze Yee Ng <tze.yee.ng@altera.com>
+Description:
+ (RO) Like erase_size0 for device 3.
diff --git a/Documentation/ABI/testing/sysfs-devices-platform-trackpoint b/Documentation/ABI/testing/sysfs-devices-platform-trackpoint
index df11901a6b3d..7954434b0434 100644
--- a/Documentation/ABI/testing/sysfs-devices-platform-trackpoint
+++ b/Documentation/ABI/testing/sysfs-devices-platform-trackpoint
@@ -5,7 +5,7 @@ Contact: linux-input@vger.kernel.org
Description:
(RW) Trackpoint sensitivity.
-What: /sys/devices/platform/i8042/.../intertia
+What: /sys/devices/platform/i8042/.../inertia
Date: Aug, 2005
KernelVersion: 2.6.14
Contact: linux-input@vger.kernel.org
diff --git a/Documentation/ABI/testing/sysfs-devices-system-cpu b/Documentation/ABI/testing/sysfs-devices-system-cpu
index 3a05604c21bf..82d10d556cc8 100644
--- a/Documentation/ABI/testing/sysfs-devices-system-cpu
+++ b/Documentation/ABI/testing/sysfs-devices-system-cpu
@@ -327,6 +327,24 @@ Description: Energy performance preference
This file is only present if the cppc-cpufreq driver is in use.
+What: /sys/devices/system/cpu/cpuX/cpufreq/perf_limited
+Date: February 2026
+Contact: linux-pm@vger.kernel.org
+Description: Performance Limited
+
+ Read to check if platform throttling (thermal/power/current
+ limits) caused delivered performance to fall below the
+ requested level. A non-zero value indicates throttling occurred.
+
+ Write the bitmask of bits to clear:
+
+ - 0x1 = clear bit 0 (desired performance excursion)
+ - 0x2 = clear bit 1 (minimum performance excursion)
+ - 0x3 = clear both bits
+
+ The platform sets these bits; OSPM can only clear them.
+
+ This file is only present if the cppc-cpufreq driver is in use.
What: /sys/devices/system/cpu/cpu*/cache/index3/cache_disable_{0,1}
Date: August 2008
diff --git a/Documentation/ABI/testing/sysfs-driver-dell-dw5826e-reset b/Documentation/ABI/testing/sysfs-driver-dell-dw5826e-reset
new file mode 100644
index 000000000000..a665e265633f
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-driver-dell-dw5826e-reset
@@ -0,0 +1,9 @@
+What: /sys/bus/platform/devices/<PALC0001 device>/wwan_reset
+Date: April 2026
+KernelVersion: 7.2
+Contact: Jackbb Wu <jackbb.wu@compal.com>
+Description:
+ Writing to this file triggers a Platform Level Device Reset
+ (PLDR) of the Dell DW5826e WWAN module via an ACPI _DSM
+ method. This can be used to recover the modem when it is in
+ a frozen state and unable to respond to USB commands.
diff --git a/Documentation/ABI/testing/sysfs-driver-hid-lenovo-go b/Documentation/ABI/testing/sysfs-driver-hid-lenovo-go
new file mode 100644
index 000000000000..c8221373ef76
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-driver-hid-lenovo-go
@@ -0,0 +1,724 @@
+What: /sys/class/leds/go:rgb:joystick_rings/effect
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls the display effect of the RGB interface.
+
+ Values are monocolor, breathe, chroma, or rainbow.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/class/leds/go:rgb:joystick_rings/effect_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the effect attribute.
+
+ Values are monocolor, breathe, chroma, or rainbow.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/class/leds/go:rgb:joystick_rings/enabled
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls enabling or disabling the RGB interface.
+
+ Values are true or false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/class/leds/go:rgb:joystick_rings/enabled_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the enabled attribute.
+
+ Values are true or false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/class/leds/go:rgb:joystick_rings/mode
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls the operating mode of the RGB interface.
+
+ Values are dynamic or custom. Custom allows setting the RGB effect and color.
+ Dynamic is a Windows mode for syncing Lenovo RGB interfaces not currently
+ supported under Linux.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/class/leds/go:rgb:joystick_rings/mode_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the mode attribute.
+
+ Values are dynamic or custom.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/class/leds/go:rgb:joystick_rings/profile
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls selecting the configured RGB profile.
+
+ Values are 1-3.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/class/leds/go:rgb:joystick_rings/profile_range
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the profile attribute.
+
+ Values are 1-3.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/class/leds/go:rgb:joystick_rings/speed
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls the change rate for the breathe, chroma, and rainbow effects.
+
+ Values are 0-100.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/class/leds/go:rgb:joystick_rings/speed_range
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the speed attribute.
+
+ Values are 0-100.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/firmware_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the firmware version of the internal MCU.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/fps_mode_dpi
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the DPI of the right handle when the FPS mode switch is on.
+
+ Values are 500, 800, 1200, and 1800.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/fps_mode_dpi_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the fps_mode_dpi attribute.
+
+ Values are 500, 800, 1200, and 1800.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/hardware_generation
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the hardware generation of the internal MCU.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/hardware_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the hardware version of the internal MCU.
+
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/auto_sleep_time
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls the sleep timer due to inactivity for the left removable controller.
+
+ Values are 0-255.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/auto_sleep_time_range
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the left_handle/auto_sleep_time attribute.
+
+ Values are 0-255.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/calibrate_gyro
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This initiates or halts calibration of the left removable controller's IMU.
+
+ Values are start, stop.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/calibrate_gyro_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the left_handle/calibrate_gyro attribute.
+
+ Values are start, stop.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/calibrate_gyro_status
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the result of the last attempted calibration of the left removable controller's IMU.
+
+ Values are unknown, success, failure.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/calibrate_joystick
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This initiates or halts calibration of the left removable controller's joystick.
+
+ Values are start, stop.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/calibrate_joystick_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the left_handle/calibrate_jotstick attribute.
+
+ Values are start, stop.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/calibrate_joystick_status
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the result of the last attempted calibration of the left removable controller's joystick.
+
+ Values are unknown, success, failure.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/calibrate_tirgger
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This initiates or halts calibration of the left removable controller's trigger.
+
+ Values are start, stop.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/calibrate_gyro_trigger
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the left_handle/calibrate_trigger attribute.
+
+ Values are start, stop.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/calibrate_trigger_status
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the result of the last attempted calibration of the left removable controller's trigger.
+
+ Values are unknown, success, failure.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/firmware_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the left removable controller's firmware version.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/hardware_generation
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the hardware generation of the left removable controller.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/hardware_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the hardware version of the left removable controller.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/imu_bypass_enabled
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls enabling or disabling the IMU bypass function of the left removable controller.
+
+ Values are true or false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/imu_bypass_enabled_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the left_handle/imu_bypass_enabled attribute.
+
+ Values are true or false.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/imu_enabled
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls enabling or disabling the IMU of the left removable controller.
+
+ Values are true or false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/imu_enabled_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the left_handle/imu_enabled attribute.
+
+ Values are true or false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/product_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the product version of the left removable controller.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/protocol_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the protocol version of the left removable controller.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/reset
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: Resets the left removable controller to factory defaults.
+
+ Writing 1 to this path initiates.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/rumble_mode
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls setting the response behavior for rumble events for the left removable controller.
+
+ Values are fps, racing, standarg, spg, rpg.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/rumble_mode_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the left_handle/rumble_mode attribute.
+
+ Values are fps, racing, standarg, spg, rpg.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/rumble_notification
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls enabling haptic rumble events for the left removable controller.
+
+ Values are true, false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/rumble_notification_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the left_handle/rumble_notification attribute.
+
+ Values are true, false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/mode
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls the operating mode of the built-in controller.
+
+ Values are xinput or dinput.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/left_handle/mode_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the mode attribute.
+
+ Values are xinput or dinput.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/os_mode
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls the behavior of built in chord combinations.
+
+ Values are windows or linux.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/os_mode_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the os_mode attribute.
+
+ Values are windows or linux.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/product_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the product version of the internal MCU.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/protocol_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the protocol version of the internal MCU.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/reset_mcu
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: Resets the internal MCU to factory defaults.
+
+ Writing 1 to this path initiates.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/auto_sleep_time
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls the sleep timer due to inactivity for the right removable controller.
+
+ Values are 0-255.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/auto_sleep_time_range
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the right_handle/auto_sleep_time attribute.
+
+ Values are 0-255.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/calibrate_gyro
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This initiates or halts calibration of the right removable controller's IMU.
+
+ Values are start, stop.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/calibrate_gyro_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the right_handle/calibrate_gyro attribute.
+
+ Values are start, stop.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/calibrate_gyro_status
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the result of the last attempted calibration of the right removable controller's IMU.
+
+ Values are unknown, success, failure.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/calibrate_joystick
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This initiates or halts calibration of the right removable controller's joystick.
+
+ Values are start, stop.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/calibrate_joystick_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the right_handle/calibrate_jotstick attribute.
+
+ Values are start, stop.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/calibrate_joystick_status
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the result of the last attempted calibration of the right removable controller's joystick.
+
+ Values are unknown, success, failure.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/calibrate_tirgger
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This initiates or halts calibration of the right removable controller's trigger.
+
+ Values are start, stop.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/calibrate_gyro_trigger
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the right_handle/calibrate_trigger attribute.
+
+ Values are start, stop.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/calibrate_trigger_status
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the result of the last attempted calibration of the right removable controller's trigger.
+
+ Values are unknown, success, failure.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/firmware_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the right removable controller's firmware version.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/hardware_generation
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the hardware generation of the right removable controller.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/hardware_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the hardware version of the right removable controller.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/imu_bypass_enabled
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls enabling or disabling the IMU bypass function of the right removable controller.
+
+ Values are true or false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/imu_bypass_enabled_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the right_handle/imu_bypass_enabled attribute.
+
+ Values are true or false.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/imu_enabled
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls enabling or disabling the IMU of the right removable controller.
+
+ Values are true or false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/imu_enabled_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the right_handle/imu_enabled attribute.
+
+ Values are true or false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/product_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the product version of the right removable controller.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/protocol_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the protocol version of the right removable controller.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/reset
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: Resets the right removable controller to factory defaults.
+
+ Writing 1 to this path initiates.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/rumble_mode
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls setting the response behavior for rumble events for the right removable controller.
+
+ Values are fps, racing, standarg, spg, rpg.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/rumble_mode_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the right_handle/rumble_mode attribute.
+
+ Values are fps, racing, standarg, spg, rpg.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/rumble_notification
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls enabling haptic rumble events for the right removable controller.
+
+ Values are true, false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/right_handle/rumble_notification_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the right_handle/rumble_notification attribute.
+
+ Values are true, false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/rumble_intensity
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls setting the rumble intensity for both removable controllers.
+
+ Values are off, low, medium, high.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/rumble_intensity_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the rumble_intensity attribute.
+
+ Values are off, low, medium, high.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/touchpad/enabled
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls enabling or disabling the touchpad.
+
+ Values are true, false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/touchpad/enabled_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the touchpad/enabled attribute.
+
+ Values are true, false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/touchpad/vibration_enabled
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls enabling haptic rumble events for the touchpad.
+
+ Values are true, false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/touchpad/vibration_enabled_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the touchpad/vibration_enabled attribute.
+
+ Values are true, false.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/touchpad/vibration_intensity
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls setting the intensity of the touchpad haptics.
+
+ Values are off, low, medium, high.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/touchpad/vibration_intensity_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the touchpad/vibration_intensity attribute.
+
+ Values are off, low, medium, high.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/tx_dongle/firmware_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the firmware version of the internal wireless transmission dongle.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/tx_dongle/hardware_generation
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the hardware generation of the internal wireless transmission dongle.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/tx_dongle/hardware_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the hardware version of the internal wireless transmission dongle.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/tx_dongle/product_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the product version of the internal wireless transmission dongle.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/tx_dongle/protocol_version
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the protocol version of the internal wireless transmission dongle.
+
+ Applies to Lenovo Legion Go and Go 2 line of handheld devices.
+
diff --git a/Documentation/ABI/testing/sysfs-driver-hid-lenovo-go-s b/Documentation/ABI/testing/sysfs-driver-hid-lenovo-go-s
new file mode 100644
index 000000000000..4d317074bb7e
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-driver-hid-lenovo-go-s
@@ -0,0 +1,304 @@
+What: /sys/class/leds/go_s:rgb:joystick_rings/effect
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls the display effect of the RGB interface.
+
+ Values are monocolor, breathe, chroma, or rainbow.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/class/leds/go_s:rgb:joystick_rings/effect_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the effect attribute.
+
+ Values are monocolor, breathe, chroma, or rainbow.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/class/leds/go_s:rgb:joystick_rings/enabled
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls enabling or disabling the RGB interface.
+
+ Values are true or false.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/class/leds/go_s:rgb:joystick_rings/enabled_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the enabled attribute.
+
+ Values are true or false.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/class/leds/go_s:rgb:joystick_rings/mode
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls the operating mode of the RGB interface.
+
+ Values are dynamic or custom. Custom allows setting the RGB effect and color.
+ Dynamic is a Windows mode for syncing Lenovo RGB interfaces not currently
+ supported under Linux.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/class/leds/go_s:rgb:joystick_rings/mode_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the mode attribute.
+
+ Values are dynamic or custom.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/class/leds/go_s:rgb:joystick_rings/profile
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls selecting the configured RGB profile.
+
+ Values are 1-3.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/class/leds/go_s:rgb:joystick_rings/profile_range
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the profile attribute.
+
+ Values are 1-3.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/class/leds/go_s:rgb:joystick_rings/speed
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls the change rate for the breathe, chroma, and rainbow effects.
+
+ Values are 0-100.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/class/leds/go_s:rgb:joystick_rings/speed_range
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the speed attribute.
+
+ Values are 0-100.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/gamepad/auto_sleep_time
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls the sleep timer due to inactivity for the built-in controller.
+
+ Values are 0-255.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/gamepad/auto_sleep_time_range
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the gamepad/auto_sleep_time attribute.
+
+ Values are 0-255.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/gamepad/dpad_mode
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls the operating mode of the built-in controllers D-pad.
+
+ Values are 4-way or 8-way.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/gamepad/dpad_mode_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the gamepad/dpad_mode attribute.
+
+ Values are 4-way or 8-way.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/gamepad/mode
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls the operating mode of the built-in controller.
+
+ Values are xinput or dinput.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/gamepad/mode_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the gamepad/mode attribute.
+
+ Values are xinput or dinput.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/gamepad/poll_rate
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls the poll rate in Hz of the built-in controller.
+
+ Values are 125, 250, 500, or 1000.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/gamepad/poll_rate_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the gamepad/poll_rate attribute.
+
+ Values are 125, 250, 500, or 1000.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/imu/bypass_enabled
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls enabling or disabling the IMU bypass function. When enabled the IMU data is directly reported to the OS through
+an HIDRAW interface.
+
+ Values are true or false.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/imu/bypass_enabled_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the imu/bypass_enabled attribute.
+
+ Values are true or false.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/imu/manufacturer
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the manufacturer of the intertial measurment unit.
+
+ Values are Bosch or ST.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/imu/sensor_enabled
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls enabling or disabling the IMU.
+
+ Values are true, false, or wake-2s.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/imu/sensor_enabled_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the imu/sensor_enabled attribute.
+
+ Values are true, false, or wake-2s.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/mcu_id
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the MCU Identification Number
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/mouse/step
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls which value is used for the mouse sensitivity.
+
+ Values are 1-127.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/mouse/step_range
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the mouse/step attribute.
+
+ Values are 1-127.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/os_mode
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls which value is used for the touchpads operating mode.
+
+ Values are windows or linux.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/os_mode_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the os_mode attribute.
+
+ Values are windows or linux.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/touchpad/enabled
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls enabling or disabling the built-in touchpad.
+
+ Values are true or false.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/touchpad/enabled_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the touchpad/enabled attribute.
+
+ Values are true or false.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/touchpad/linux_mode
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls behavior of the touchpad events when os_mode is set to linux.
+
+ Values are absolute or relative.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/touchpad/linux_mode_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the touchpad/linux_mode attribute.
+
+ Values are absolute or relative.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/touchpad/windows_mode
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This controls behavior of the touchpad events when os_mode is set to windows.
+
+ Values are absolute or relative.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
+
+What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/touchpad/windows_mode_index
+Date: April 2026
+Contact: linux-input@vger.kernel.org
+Description: This displays the available options for the touchpad/windows_mode attribute.
+
+ Values are absolute or relative.
+
+ Applies to Lenovo Legion Go S line of handheld devices.
diff --git a/Documentation/ABI/testing/sysfs-driver-intel-xe-hwmon b/Documentation/ABI/testing/sysfs-driver-intel-xe-hwmon
index 55ab45f669ac..0da739d9a816 100644
--- a/Documentation/ABI/testing/sysfs-driver-intel-xe-hwmon
+++ b/Documentation/ABI/testing/sysfs-driver-intel-xe-hwmon
@@ -251,6 +251,13 @@ Description: RO. Fan 2 speed in RPM.
Only supported for particular Intel Xe graphics platforms.
+ On DG2 the driver always shows two fan channels, because the
+ FSC_READ_NUM_FANS command does not work on some cards. OEMs
+ decide how the fans map to tach channels, so two fans can share
+ one tach line. When that happens, the second channel
+ reads 0 RPM even though the fan is spinning. This is normal, not
+ a bug.
+
What: /sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/fan3_input
Date: March 2025
KernelVersion: 6.16
diff --git a/Documentation/ABI/testing/sysfs-driver-intel-xe-ras b/Documentation/ABI/testing/sysfs-driver-intel-xe-ras
new file mode 100644
index 000000000000..3870e5a03a92
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-driver-intel-xe-ras
@@ -0,0 +1,30 @@
+What: /sys/bus/pci/drivers/xe/.../gpu_health
+Date: July 2026
+KernelVersion: 7.3
+Contact: intel-xe@lists.freedesktop.org
+Description:
+ This file exposes the current gpu health state and allows the gpu
+ health state to be updated.
+
+ This sysfs file is present only on Intel Xe platforms that support
+ the gpu health indicator interface for RAS. Reading the current
+ health state is available to all users, while updating the health
+ state is restricted to administrative users only.
+
+ Read returns a single line containing one of the valid values for
+ the current gpu health state. Writing one of the valid values
+ updates the current gpu health state.
+
+ The valid values for the gpu health state are:
+
+ ok
+ The gpu is healthy and operating within normal
+ parameters.
+
+ warning
+ The gpu is experiencing minor issues but remains
+ operational.
+
+ critical
+ The gpu is in a critical state and may not be
+ operational.
diff --git a/Documentation/ABI/testing/sysfs-driver-intel-xe-sriov b/Documentation/ABI/testing/sysfs-driver-intel-xe-sriov
index 7f5ef9eada53..1d6eaff6882f 100644
--- a/Documentation/ABI/testing/sysfs-driver-intel-xe-sriov
+++ b/Documentation/ABI/testing/sysfs-driver-intel-xe-sriov
@@ -129,6 +129,37 @@ Description:
-EIO if FW refuses to change the provisioning.
+What: /sys/bus/pci/drivers/xe/.../sriov_admin/.bulk_profile/vram_quota
+What: /sys/bus/pci/drivers/xe/.../sriov_admin/vf<n>/profile/vram_quota
+Date: February 2026
+KernelVersion: 7.0
+Contact: intel-xe@lists.freedesktop.org
+Description:
+ These files allow to perform initial VFs VRAM provisioning prior to VFs
+ enabling or to change VFs VRAM provisioning once the VFs are enabled.
+ Any non-zero initial VRAM provisioning will block VFs auto-provisioning.
+ Without initial VRAM provisioning those files will show result of the
+ VRAM auto-provisioning performed by the PF once the VFs are enabled.
+ Once the VFs are disabled, all VRAM provisioning will be released.
+ These files are visible only on discrete Intel Xe platforms with VRAM
+ and are writeable only if dynamic VFs VRAM provisioning is supported.
+
+ .bulk_profile/vram_quota: (WO) unsigned integer
+ The amount of the provisioned VRAM in [bytes] for each VF.
+ Actual quota value might be aligned per HW/FW requirements.
+
+ profile/vram_quota: (RW) unsigned integer
+ The amount of the provisioned VRAM in [bytes] for this VF.
+ Actual quota value might be aligned per HW/FW requirements.
+
+ Default is 0 (unprovisioned).
+
+ Writes to these attributes may fail with errors like:
+ -EINVAL if provided input is malformed or not recognized,
+ -EPERM if change is not applicable on given HW/FW,
+ -EIO if FW refuses to change the provisioning.
+
+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/vf<n>/stop
Date: October 2025
KernelVersion: 6.19
diff --git a/Documentation/ABI/testing/sysfs-driver-ivpu b/Documentation/ABI/testing/sysfs-driver-ivpu
new file mode 100644
index 000000000000..91685774edfc
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-driver-ivpu
@@ -0,0 +1,65 @@
+What: /sys/bus/pci/drivers/intel_vpu/.../npu_busy_time_us
+Date: May 2024
+KernelVersion: 6.11
+Contact: dri-devel@lists.freedesktop.org
+Description: Time in microseconds that the device spent executing jobs. The time is
+ counted when and only when there are jobs submitted to firmware. This time
+ can be used to measure the utilization of NPU, either by calculating the
+ difference between two timepoints or monitoring utilization percentage by
+ reading periodically. Recommended read period is 1 second to avoid impact
+ on job submission performance. Read-only.
+
+What: /sys/bus/pci/drivers/intel_vpu/.../npu_memory_utilization
+Date: Jan 2025
+KernelVersion: 6.15
+Contact: dri-devel@lists.freedesktop.org
+Description: Current NPU memory utilization in bytes. Reports the total size of all
+ resident buffer objects allocated for NPU use. Read-only.
+
+What: /sys/bus/pci/drivers/intel_vpu/.../freq/hw_min_freq
+Date: April 2026
+KernelVersion: 7.2
+Contact: dri-devel@lists.freedesktop.org
+Description: Minimum frequency in MHz supported by the NPU hardware. This is a
+ hardware capability and cannot be changed. Read-only.
+
+What: /sys/bus/pci/drivers/intel_vpu/.../freq/hw_efficient_freq
+Date: April 2026
+KernelVersion: 7.2
+Contact: dri-devel@lists.freedesktop.org
+Description: Most efficient operating frequency in MHz for the NPU. This represents
+ the frequency at which the NPU operates most efficiently in terms of power
+ and performance. Read-only.
+
+What: /sys/bus/pci/drivers/intel_vpu/.../freq/hw_max_freq
+Date: April 2026
+KernelVersion: 7.2
+Contact: dri-devel@lists.freedesktop.org
+Description: Maximum frequency in MHz supported by the NPU hardware. This is a
+ hardware capability and cannot be changed. Read-only.
+
+What: /sys/bus/pci/drivers/intel_vpu/.../freq/current_freq
+Date: April 2026
+KernelVersion: 7.2
+Contact: dri-devel@lists.freedesktop.org
+Description: Current operating frequency in MHz of the NPU. The value is valid only
+ when the device is active; returns 0 when idle. The actual frequency may
+ be lower than the requested range due to power or thermal constraints.
+ Read-only.
+
+What: /sys/bus/pci/drivers/intel_vpu/.../freq/set_min_freq
+Date: April 2026
+KernelVersion: 7.2
+Contact: dri-devel@lists.freedesktop.org
+Description: Configured minimum operating frequency in MHz (50XX devices and newer).
+ Values written are clamped to hardware limits (hw_min_freq to hw_max_freq).
+ If set_min_freq exceeds set_max_freq, the driver clamps set_min_freq to
+ set_max_freq when selecting the operating frequency. Read-write.
+
+What: /sys/bus/pci/drivers/intel_vpu/.../freq/set_max_freq
+Date: April 2026
+KernelVersion: 7.2
+Contact: dri-devel@lists.freedesktop.org
+Description: Configured maximum operating frequency in MHz (50XX devices and newer).
+ Values written are clamped to hardware limits (hw_min_freq to hw_max_freq).
+ Read-write.
diff --git a/Documentation/ABI/testing/sysfs-driver-lenovo-yb9-kbdock b/Documentation/ABI/testing/sysfs-driver-lenovo-yb9-kbdock
new file mode 100644
index 000000000000..ebe713aefad1
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-driver-lenovo-yb9-kbdock
@@ -0,0 +1,19 @@
+What: /sys/bus/wmi/drivers/lenovo-yb9-kbdock/<guid>/keyboard_position
+Date: June 2027
+KernelVersion: 7.3
+Contact: Dave Carey <carvsdriver@gmail.com>
+Description:
+ Read-only attribute reporting the current keyboard dock position
+ as reported by the Embedded Controller on the Lenovo Yoga Book 9
+ 14IAH10.
+
+ Possible values:
+
+ == =============================================================
+ 0 keyboard is not docked to any screen (detached)
+ 1 keyboard docked on the top half of the bottom screen
+ 2 keyboard docked on the bottom half of the bottom screen
+ == =============================================================
+
+ SW_TABLET_MODE input events are also emitted: 0 when the keyboard
+ is docked (either position), 1 when detached.
diff --git a/Documentation/ABI/testing/sysfs-driver-qat_kpt b/Documentation/ABI/testing/sysfs-driver-qat_kpt
new file mode 100644
index 000000000000..c6480ea1fa4f
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-driver-qat_kpt
@@ -0,0 +1,97 @@
+What: /sys/bus/pci/devices/<BDF>/qat_kpt/
+Date: August 2026
+KernelVersion: 7.2
+Contact: qat-linux@intel.com
+Description:
+ Directory containing attributes related to the QAT Key Protection
+ Technology (KPT) feature. KPT allows cryptographic keys to be used
+ by the accelerator without being exposed in plaintext to the host.
+
+What: /sys/bus/pci/devices/<BDF>/qat_kpt/enable
+Date: August 2026
+KernelVersion: 7.2
+Contact: qat-linux@intel.com
+Description:
+ (RW) Enables or disables Key Protection Technology (KPT).
+
+ Write 1 to enable KPT, or 0 to disable it.
+
+ Example usage::
+
+ # cat /sys/bus/pci/devices/<BDF>/qat_kpt/enable
+ 0
+ # echo 1 > /sys/bus/pci/devices/<BDF>/qat_kpt/enable
+
+ This attribute is only available on devices that support KPT.
+
+What: /sys/bus/pci/devices/<BDF>/qat_kpt/swk_cnt_per_fn
+Date: August 2026
+KernelVersion: 7.2
+Contact: qat-linux@intel.com
+Description:
+ (RW) Configures the maximum number of KPT symmetric wrapping keys
+ (SWKs) that a Virtual Function (VF) may be associated with.
+
+ Valid values range from 0 to 128. A value of 0 indicates no limit.
+
+ Example usage::
+
+ # cat /sys/bus/pci/devices/<BDF>/qat_kpt/swk_cnt_per_fn
+ 128
+ # echo 128 > /sys/bus/pci/devices/<BDF>/qat_kpt/swk_cnt_per_fn
+
+ This attribute is only available on devices that support KPT.
+
+What: /sys/bus/pci/devices/<BDF>/qat_kpt/swk_cnt_per_pasid
+Date: August 2026
+KernelVersion: 7.2
+Contact: qat-linux@intel.com
+Description:
+ (RW) Configures the maximum number of KPT symmetric wrapping keys
+ (SWKs) per Process Address Space ID (PASID).
+
+ Valid values range from 0 to 128. A value of 0 indicates no limit.
+
+ Example usage::
+
+ # cat /sys/bus/pci/devices/<BDF>/qat_kpt/swk_cnt_per_pasid
+ 128
+ # echo 128 > /sys/bus/pci/devices/<BDF>/qat_kpt/swk_cnt_per_pasid
+
+ This attribute is only available on devices that support KPT.
+
+What: /sys/bus/pci/devices/<BDF>/qat_kpt/swk_max_ttl
+Date: August 2026
+KernelVersion: 7.2
+Contact: qat-linux@intel.com
+Description:
+ (RW) Configures the maximum Time To Live (TTL) for KPT symmetric
+ wrapping keys (SWK).
+
+ Valid values range from 0 to 31536000 seconds. A value of 0
+ indicates that the SWK TTL is unlimited.
+
+ Example usage::
+
+ # cat /sys/bus/pci/devices/<BDF>/qat_kpt/swk_max_ttl
+ 1000
+ # echo 1000 > /sys/bus/pci/devices/<BDF>/qat_kpt/swk_max_ttl
+
+ This attribute is only available on devices that support KPT.
+
+What: /sys/bus/pci/devices/<BDF>/qat_kpt/swk_shared
+Date: August 2026
+KernelVersion: 7.2
+Contact: qat-linux@intel.com
+Description:
+ (RW) Controls shared mode for KPT symmetric wrapping keys (SWK).
+
+ Write 1 to enable shared mode, or 0 to disable it (non-shared mode).
+
+ Example usage::
+
+ # cat /sys/bus/pci/devices/<BDF>/qat_kpt/swk_shared
+ 0
+ # echo 1 > /sys/bus/pci/devices/<BDF>/qat_kpt/swk_shared
+
+ This attribute is only available on devices that support KPT.
diff --git a/Documentation/ABI/testing/sysfs-driver-qat_rl b/Documentation/ABI/testing/sysfs-driver-qat_rl
index d534f89b4971..422333a0eb69 100644
--- a/Documentation/ABI/testing/sysfs-driver-qat_rl
+++ b/Documentation/ABI/testing/sysfs-driver-qat_rl
@@ -209,7 +209,7 @@ Date: January 2024
KernelVersion: 6.7
Contact: qat-linux@intel.com
Description:
- (RW) This file will return the remaining capability for a
+ (RW) This file will return the remaining capacity for a
particular service/sla. This is the remaining value that a new
SLA can be set to or a current SLA can be increased with.
diff --git a/Documentation/ABI/testing/sysfs-driver-qat_svn b/Documentation/ABI/testing/sysfs-driver-qat_svn
new file mode 100644
index 000000000000..3832b523dcb0
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-driver-qat_svn
@@ -0,0 +1,114 @@
+What: /sys/bus/pci/devices/<BDF>/qat_svn/
+Date: June 2026
+KernelVersion: 7.1
+Contact: qat-linux@intel.com
+Description: Directory containing Security Version Number (SVN) attributes for
+ the Anti-Rollback (ARB) feature. The ARB feature prevents downloading
+ older firmware versions to the acceleration device.
+
+What: /sys/bus/pci/devices/<BDF>/qat_svn/enforced_min
+Date: June 2026
+KernelVersion: 7.1
+Contact: qat-linux@intel.com
+Description:
+ (RO) Reports the minimum allowed firmware SVN.
+
+ Returns an integer greater than zero. Firmware with SVN lower than
+ this value is rejected.
+
+ A write to qat_svn/commit will update this value. The update is not
+ persistent across reboot; on reboot, this value is reset from
+ qat_svn/permanent_min.
+
+ Example usage::
+
+ # cat /sys/bus/pci/devices/<BDF>/qat_svn/enforced_min
+ 2
+
+ This attribute is available only on devices that support
+ Anti-Rollback.
+
+What: /sys/bus/pci/devices/<BDF>/qat_svn/permanent_min
+Date: June 2026
+KernelVersion: 7.1
+Contact: qat-linux@intel.com
+Description:
+ (RO) Reports the persistent minimum SVN used to initialize
+ qat_svn/enforced_min on each reboot.
+
+ Returns an integer greater than zero. A write to qat_svn/commit
+ may update this value, depending on platform/BIOS settings.
+
+ Example usage::
+
+ # cat /sys/bus/pci/devices/<BDF>/qat_svn/permanent_min
+ 3
+
+ This attribute is available only on devices that support
+ Anti-Rollback.
+
+What: /sys/bus/pci/devices/<BDF>/qat_svn/active
+Date: June 2026
+KernelVersion: 7.1
+Contact: qat-linux@intel.com
+Description:
+ (RO) Reports the SVN of the currently active firmware image.
+
+ Returns an integer greater than zero.
+
+ Example usage::
+
+ # cat /sys/bus/pci/devices/<BDF>/qat_svn/active
+ 2
+
+ This attribute is available only on devices that support
+ Anti-Rollback.
+
+What: /sys/bus/pci/devices/<BDF>/qat_svn/commit
+Date: June 2026
+KernelVersion: 7.1
+Contact: qat-linux@intel.com
+Description:
+ (WO) Commits the currently active SVN as the minimum allowed SVN.
+
+ Writing 1 sets qat_svn/enforced_min to the value of qat_svn/active,
+ preventing future firmware loads with lower SVN.
+
+ Depending on platform/BIOS settings, a commit may also update
+ qat_svn/permanent_min.
+
+ Note that on reboot, qat_svn/enforced_min reverts to
+ qat_svn/permanent_min.
+
+ It is advisable to use this attribute with caution, only when
+ it is necessary to set a new minimum SVN for the firmware.
+
+ Before committing the SVN update, it is crucial to check the
+ current values of qat_svn/active, qat_svn/enforced_min and
+ qat_svn/permanent_min. This verification helps ensure that the
+ commit operation aligns with the intended outcome.
+
+ While writing to the file, any value other than '1' will result
+ in an error and have no effect.
+
+ Example usage::
+
+ ## Read current values
+ # cat /sys/bus/pci/devices/<BDF>/qat_svn/enforced_min
+ 2
+ # cat /sys/bus/pci/devices/<BDF>/qat_svn/permanent_min
+ 2
+ # cat /sys/bus/pci/devices/<BDF>/qat_svn/active
+ 3
+
+ ## Commit active SVN
+ # echo 1 > /sys/bus/pci/devices/<BDF>/qat_svn/commit
+
+ ## Read updated values
+ # cat /sys/bus/pci/devices/<BDF>/qat_svn/enforced_min
+ 3
+ # cat /sys/bus/pci/devices/<BDF>/qat_svn/permanent_min
+ 3
+
+ This attribute is available only on devices that support
+ Anti-Rollback.
diff --git a/Documentation/ABI/testing/sysfs-driver-tegra-fuse b/Documentation/ABI/testing/sysfs-driver-tegra-fuse
index b8936fad2ccf..47d5513100f6 100644
--- a/Documentation/ABI/testing/sysfs-driver-tegra-fuse
+++ b/Documentation/ABI/testing/sysfs-driver-tegra-fuse
@@ -1,6 +1,6 @@
What: /sys/devices/*/<our-device>/fuse
Date: February 2014
-Contact: Peter De Schrijver <pdeschrijver@nvidia.com>
+Contact: Thierry Reding <thierry.reding@kernel.org>
Description: read-only access to the efuses on Tegra20, Tegra30, Tegra114
and Tegra124 SoC's from NVIDIA. The efuses contain write once
data programmed at the factory. The data is laid out in 32bit
diff --git a/Documentation/ABI/testing/sysfs-driver-ufs b/Documentation/ABI/testing/sysfs-driver-ufs
index a90612ab5780..3c422aac778b 100644
--- a/Documentation/ABI/testing/sysfs-driver-ufs
+++ b/Documentation/ABI/testing/sysfs-driver-ufs
@@ -1768,3 +1768,26 @@ Description:
==================== ===========================
The attribute is read only.
+
+What: /sys/bus/platform/drivers/ufshcd/*/dme_qos_notification
+What: /sys/bus/platform/devices/*.ufs/dme_qos_notification
+Date: March 2026
+Contact: Can Guo <can.guo@oss.qualcomm.com>
+Description:
+ This attribute reports and clears pending DME (Device Management
+ Entity) Quality of Service (QoS) notifications. This attribute
+ is a bitfield with the following bit assignments:
+
+ Bit Description
+ === ======================================
+ 0 DME QoS Monitor has been reset by host
+ 1 QoS from TX is detected
+ 2 QoS from RX is detected
+ 3 QoS from PA_INIT is detected
+
+ Reading this attribute returns the pending DME QoS notification
+ bits. Writing '0' to this attribute clears pending DME QoS
+ notification bits. Writing any non-zero value is invalid and
+ will be rejected.
+
+ The attribute is read/write.
diff --git a/Documentation/ABI/testing/sysfs-driver-uniwill-laptop b/Documentation/ABI/testing/sysfs-driver-uniwill-laptop
index 2df70792968f..943f92c6b561 100644
--- a/Documentation/ABI/testing/sysfs-driver-uniwill-laptop
+++ b/Documentation/ABI/testing/sysfs-driver-uniwill-laptop
@@ -51,3 +51,55 @@ Description:
Reading this file returns the current status of the breathing animation
functionality.
+
+What: /sys/bus/platform/devices/INOU0000:XX/ctgp_offset
+Date: January 2026
+KernelVersion: 7.0
+Contact: Werner Sembach <wse@tuxedocomputers.com>
+Description:
+ Allows userspace applications to set the configurable TGP offset on top of the base
+ TGP. Base TGP and max TGP and therefore the max cTGP offset are device specific.
+ Note that setting the maximum cTGP leaves no window open for Dynamic Boost as
+ Dynamic Boost also can not go over max TGP. Setting the cTGP to maximum is
+ effectively disabling Dynamic Boost and telling the device to always prioritize the
+ GPU over the CPU.
+
+ Reading this file returns the current configurable TGP offset.
+
+What: /sys/bus/platform/devices/INOU0000:XX/usb_c_power_priority
+Date: February 2026
+KernelVersion: 7.1
+Contact: Werner Sembach <wse@tuxedocomputers.com>
+Description:
+ Allows userspace applications to choose the USB-C power distribution profile between
+ one that offers a bigger share of the power to the battery and one that offers more
+ of it to the CPU. Writing "charging"/"performance" into this file selects the
+ respective profile.
+
+ Reading this file returns the profile names with the currently active one in
+ brackets.
+
+What: /sys/bus/platform/devices/INOU0000:XX/ac_auto_boot
+Date: March 2026
+KernelVersion: 7.1
+Contact: Armin Wolf <W_Armin@gmx.de>
+Description:
+ Allows userspace applications to configure if the device should boot automatically
+ when being connected to a power source. Writing "1"/"0" into this file
+ enables/disables this functionality. Enabling both AC auto boot and USB powershare
+ at the same time is not supported.
+
+ Reading this file returns the current status of the AC auto boot functionality.
+
+What: /sys/bus/platform/devices/INOU0000:XX/usb_powershare_high
+Date: March 2026
+KernelVersion: 7.1
+Contact: Armin Wolf <W_Armin@gmx.de>
+Description:
+ Allows userspace applications to configure if the device should continue to provide
+ power via the USB ports when hibernating or powered off. Might also increase the
+ power budget available to USB ports on some devices. Writing "1"/"0" into this
+ file enables/disables this functionality. Enabling both USB powershare and AC auto
+ boot at the same time is not supported.
+
+ Reading this file returns the current status of the USB powershare functionality.
diff --git a/Documentation/ABI/testing/sysfs-edac-memory-repair b/Documentation/ABI/testing/sysfs-edac-memory-repair
index 0434a3b23ff3..ab199132ffd8 100644
--- a/Documentation/ABI/testing/sysfs-edac-memory-repair
+++ b/Documentation/ABI/testing/sysfs-edac-memory-repair
@@ -160,7 +160,7 @@ Description:
in trace events, such as CXL DRAM and CXL general media
error records of CXL memory devices.
- When readng back these attributes, it returns the current
+ When reading back these attributes, it returns the current
value of memory requested to be repaired.
bank_group - The bank group of the memory to repair.
diff --git a/Documentation/ABI/testing/sysfs-firmware-acpi b/Documentation/ABI/testing/sysfs-firmware-acpi
index 72e7c9161ce7..fa33dda331f2 100644
--- a/Documentation/ABI/testing/sysfs-firmware-acpi
+++ b/Documentation/ABI/testing/sysfs-firmware-acpi
@@ -41,6 +41,12 @@ Description:
platform runtime firmware S3 resume, just prior to
handoff to the OS waking vector. In nanoseconds.
+ FBPT: The raw binary contents of the Firmware Basic Boot
+ Performance Table (FBPT) subtable.
+
+ S3PT: The raw binary contents of the S3 Performance Table
+ (S3PT) subtable.
+
What: /sys/firmware/acpi/bgrt/
Date: January 2012
Contact: Matthew Garrett <mjg@redhat.com>
diff --git a/Documentation/ABI/testing/sysfs-firmware-gsmi b/Documentation/ABI/testing/sysfs-firmware-gsmi
index 7a558354c1ee..3b3c3ae6f458 100644
--- a/Documentation/ABI/testing/sysfs-firmware-gsmi
+++ b/Documentation/ABI/testing/sysfs-firmware-gsmi
@@ -19,7 +19,7 @@ Description:
/sys/firmware/gsmi/vars:
This directory has the same layout (and
- underlying implementation as /sys/firmware/efi/vars.
+ underlying implementation) as /sys/firmware/efi/vars.
See `Documentation/ABI/*/sysfs-firmware-efi-vars`
for more information on how to interact with
this structure.
diff --git a/Documentation/ABI/testing/sysfs-firmware-sev-vulnerabilities b/Documentation/ABI/testing/sysfs-firmware-sev-vulnerabilities
new file mode 100644
index 000000000000..964362558bb2
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-firmware-sev-vulnerabilities
@@ -0,0 +1,19 @@
+What: /sys/firmware/sev/vulnerabilities/supported_mitigations
+Date: June 2026
+Contact: linux-crypto@vger.kernel.org
+Description:
+ Read-only interface that reports the vector of SEV-SNP
+ firmware vulnerability mitigations supported by the firmware.
+
+What: /sys/firmware/sev/vulnerabilities/verified_mitigations
+Date: June 2026
+Contact: linux-crypto@vger.kernel.org
+Description:
+ Read/write interface that reports the vector of SEV-SNP
+ firmware vulnerability mitigations already verified by the
+ firmware. Writing a vector value requests the firmware to
+ VERIFY the corresponding mitigation bit(s).
+
+ The list of supported mitigations and the meaning of each
+ vector bit are both platform- and bug-specific and are
+ published as part of the AMD Security Bulletin.
diff --git a/Documentation/ABI/testing/sysfs-fs-erofs b/Documentation/ABI/testing/sysfs-fs-erofs
index e4cf6fc6a106..0b8b4354e40b 100644
--- a/Documentation/ABI/testing/sysfs-fs-erofs
+++ b/Documentation/ABI/testing/sysfs-fs-erofs
@@ -5,7 +5,7 @@ Description: Shows all enabled kernel features.
Supported features:
compr_cfgs, big_pcluster, chunked_file, device_table,
compr_head2, sb_chksum, ztailpacking, dedupe, fragments,
- 48bit, metabox.
+ xattr_prefixes, 48bit, metabox.
What: /sys/fs/erofs/<disk>/sync_decompress
Date: November 2021
diff --git a/Documentation/ABI/testing/sysfs-fs-f2fs b/Documentation/ABI/testing/sysfs-fs-f2fs
index c1d2b3fd9c65..0cebc89799dd 100644
--- a/Documentation/ABI/testing/sysfs-fs-f2fs
+++ b/Documentation/ABI/testing/sysfs-fs-f2fs
@@ -270,7 +270,8 @@ Description: Shows all enabled kernel features.
inode_checksum, flexible_inline_xattr, quota_ino,
inode_crtime, lost_found, verity, sb_checksum,
casefold, readonly, compression, test_dummy_encryption_v2,
- atomic_write, pin_file, encrypted_casefold, linear_lookup.
+ atomic_write, pin_file, encrypted_casefold, linear_lookup,
+ fserror.
What: /sys/fs/f2fs/<disk>/inject_rate
Date: May 2016
@@ -407,6 +408,12 @@ Contact: "Hridya Valsaraju" <hridya@google.com>
Description: Average number of valid blocks.
Available when CONFIG_F2FS_STAT_FS=y.
+What: /sys/fs/f2fs/<disk>/defrag_blocks
+Date: February 2026
+Contact: "Jinbao Liu" <liujinbao1@xiaomi.com>
+Description: Number of blocks moved by defragment.
+ Available when CONFIG_F2FS_STAT_FS=y.
+
What: /sys/fs/f2fs/<disk>/mounted_time_sec
Date: February 2020
Contact: "Jaegeuk Kim" <jaegeuk@kernel.org>
@@ -979,6 +986,7 @@ Description: This sysfs entry can be used to enable/disable to adjust priority f
0x00000008 gc_lock
0x00000010 cp_global
0x00000020 io_rwsem
+ 0x00000040 nat_tree_lock
========== ==================
What: /sys/fs/f2fs/<disk>/lock_duration_priority
@@ -994,4 +1002,21 @@ Contact: "Chao Yu" <chao@kernel.org>
Description: It can be used to tune priority of f2fs critical task, e.g. f2fs_ckpt, f2fs_gc
threads, limitation as below:
- it requires user has CAP_SYS_NICE capability.
- - the range is [100, 139], by default the value is 100.
+ - the range is [100, 139], by default the value is 120.
+
+What: /sys/fs/f2fs/<disk>/max_atc_write_bio_size
+Date: June 2026
+Contact: Bart Van Assche <bvanassche@acm.org>
+Description: Every time a write operation completes f2fs_write_end_io() is
+ called. This function may be called from an atomic context,
+ e.g. from inside an interrupt handler. This attribute controls
+ the maximum size of a write bio that is completed in atomic
+ (atc) context. The default value for this attribute is UINT_MAX
+ which means that this functionality is disabled by default.
+
+What: /sys/fs/f2fs/<disk>/pinned_area_max_secno
+Date: August 2026
+Contact: "Daeho Jeong" <daehojeong@google.com>
+Description: This is a read-only entry to show the upper bound section number
+ for pinned files. Pinned files will only be allocated within
+ sections 0 to pinned_area_max_secno - 1.
diff --git a/Documentation/ABI/testing/sysfs-kernel-mm-damon b/Documentation/ABI/testing/sysfs-kernel-mm-damon
index f2af2ddedd32..e675a57145e3 100644
--- a/Documentation/ABI/testing/sysfs-kernel-mm-damon
+++ b/Documentation/ABI/testing/sysfs-kernel-mm-damon
@@ -1,26 +1,26 @@
what: /sys/kernel/mm/damon/
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Interface for Data Access MONitoring (DAMON). Contains files
for controlling DAMON. For more details on DAMON itself,
please refer to Documentation/admin-guide/mm/damon/index.rst.
What: /sys/kernel/mm/damon/admin/
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Interface for privileged users of DAMON. Contains files for
controlling DAMON that aimed to be used by privileged users.
What: /sys/kernel/mm/damon/admin/kdamonds/nr_kdamonds
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a number 'N' to this file creates the number of
directories for controlling each DAMON worker thread (kdamond)
named '0' to 'N-1' under the kdamonds/ directory.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/state
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing 'on' or 'off' to this file makes the kdamond starts or
stops, respectively. Reading the file returns the keywords
based on the current status. Writing 'commit' to this file
@@ -36,37 +36,40 @@ Description: Writing 'on' or 'off' to this file makes the kdamond starts or
kdamond. Writing 'clear_schemes_tried_regions' to the file
removes contents of the 'tried_regions' directory. Writing
'update_schemes_effective_quotas' to the file updates
- '.../quotas/effective_bytes' files of this kdamond.
+ '.../quotas/effective_bytes' files of this kdamond. Writing
+ 'update_tuned_intervals' to the file updates 'sample_us' and
+ 'aggr_us' files under 'monitoring_attrs/intervals' with the
+ auto-tuned sampling and aggregation intervals.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/pid
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the pid of the kdamond if it is
running.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/refresh_ms
Date: Jul 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a value to this file sets the time interval for
automatic DAMON status file contents update. Writing '0'
disables the update. Reading this file returns the value.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/nr_contexts
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a number 'N' to this file creates the number of
directories for controlling each DAMON context named '0' to
'N-1' under the contexts/ directory.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/avail_operations
Date: Apr 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the available monitoring operations
sets on the currently running kernel.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/operations
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a keyword for a monitoring operations set ('vaddr' for
virtual address spaces monitoring, 'fvaddr' for fixed virtual
address ranges monitoring, and 'paddr' for the physical address
@@ -79,101 +82,154 @@ Description: Writing a keyword for a monitoring operations set ('vaddr' for
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/addr_unit
Date: Aug 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing an integer to this file sets the 'address unit'
parameter of the given operations set of the context. Reading
the file returns the last-written 'address unit' value.
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/pause
+Date: Mar 2026
+Contact: SJ Park <sj@kernel.org>
+Description: Writing a boolean keyword to this file sets the 'pause' request
+ parameter for the context. Reading the file returns the
+ last-written 'pause' value.
+
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/sample_us
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a value to this file sets the sampling interval of the
DAMON context in microseconds as the value. Reading this file
returns the value.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/aggr_us
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a value to this file sets the aggregation interval of
the DAMON context in microseconds as the value. Reading this
file returns the value.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/update_us
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a value to this file sets the update interval of the
DAMON context in microseconds as the value. Reading this file
returns the value.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intrvals_goal/access_bp
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intervals_goal/access_bp
Date: Feb 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a value to this file sets the monitoring intervals
auto-tuning target DAMON-observed access events ratio within
the given time interval (aggrs in same directory), in bp
(1/10,000). Reading this file returns the value.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intrvals_goal/aggrs
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intervals_goal/aggrs
Date: Feb 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a value to this file sets the time interval to achieve
the monitoring intervals auto-tuning target DAMON-observed
access events ratio (access_bp in same directory) within.
Reading this file returns the value.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intrvals_goal/min_sample_us
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intervals_goal/min_sample_us
Date: Feb 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a value to this file sets the minimum value of
auto-tuned sampling interval in microseconds. Reading this
file returns the value.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intrvals_goal/max_sample_us
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intervals_goal/max_sample_us
Date: Feb 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a value to this file sets the maximum value of
auto-tuned sampling interval in microseconds. Reading this
file returns the value.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/min
-WDate: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Date: Mar 2022
+Contact: SJ Park <sj@kernel.org>
Description: Writing a value to this file sets the minimum number of
monitoring regions of the DAMON context as the value. Reading
this file returns the value.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/max
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a value to this file sets the maximum number of
monitoring regions of the DAMON context as the value. Reading
this file returns the value.
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/probes/nr_probes
+Date: May 2026
+Contact: SJ Park <sj@kernel.org>
+Description: Writing a number 'N' to this file creates the number of
+ directories for each DAMON probe named '0' to 'N-1' under the
+ probes/ directory.
+
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/probes/<P>/weight
+Date: Jul 2026
+Contact: SJ Park <sj@kernel.org>
+Description: Writing to and reading from this file sets and gets the
+ per-probe attribute weight.
+
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/probes/<P>/filters/nr_filters
+Date: May 2026
+Contact: SJ Park <sj@kernel.org>
+Description: Writing a number 'N' to this file creates the number of
+ directories for each DAMON probe filter named '0' to 'N-1'
+ under the filters/ directory.
+
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/probes/<P>/filters/<F>/type
+Date: May 2026
+Contact: SJ Park <sj@kernel.org>
+Description: Writing to and reading from this file sets and gets the type of
+ the memory of the interest.
+
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/probes/<P>/filters/<F>/path
+Date: May 2026
+Contact: SJ Park <sj@kernel.org>
+Description: If 'memcg' is written to the 'type' file, writing to and
+ reading from this file sets and gets the path to the memory
+ cgroup of the interest.
+
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/probes/<P>/filters/<F>/matching
+Date: May 2026
+Contact: SJ Park <sj@kernel.org>
+Description: Writing 'Y' or 'N' to this file sets whether the filter is for
+ the memory of the 'type', or all except the 'type'.
+
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/probes/<P>/filters/<F>/allow
+Date: May 2026
+Contact: SJ Park <sj@kernel.org>
+Description: Writing 'Y' or 'N' to this file sets whether to allow or reject
+ hitting the probe for the memory that satisfies the 'type' and
+ the 'matching' of the directory.
+
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/nr_targets
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a number 'N' to this file creates the number of
directories for controlling each DAMON target of the context
named '0' to 'N-1' under the contexts/ directory.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/pid_target
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the pid of
the target process if the context is for virtual address spaces
monitoring, respectively.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/obsolete_target
Date: Oct 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the
obsoleteness of the matching parameters commit destination
target.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/nr_regions
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a number 'N' to this file creates the number of
directories for setting each DAMON target memory region of the
context named '0' to 'N-1' under the regions/ directory. In
@@ -183,163 +239,181 @@ Description: Writing a number 'N' to this file creates the number of
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/start
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the start
address of the monitoring region.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/end
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the end
address of the monitoring region.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/nr_schemes
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a number 'N' to this file creates the number of
directories for controlling each DAMON-based operation scheme
of the context named '0' to 'N-1' under the schemes/ directory.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/action
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the action
of the scheme.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/target_nid
Date: Jun 2024
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Action's target NUMA node id. Supported by only relevant
actions.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/apply_interval_us
Date: Sep 2023
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a value to this file sets the action apply interval of
the scheme in microseconds. Reading this file returns the
value.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/min
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the minimum
size of the scheme's target regions in bytes.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/max
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the maximum
size of the scheme's target regions in bytes.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/min
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
-Description: Writing to and reading from this file sets and gets the manimum
+Contact: SJ Park <sj@kernel.org>
+Description: Writing to and reading from this file sets and gets the minimum
'nr_accesses' of the scheme's target regions.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/max
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the maximum
'nr_accesses' of the scheme's target regions.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/min
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the minimum
'age' of the scheme's target regions.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/max
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the maximum
'age' of the scheme's target regions.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/ms
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the time
quota of the scheme in milliseconds.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/bytes
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the size
quota of the scheme in bytes.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/effective_bytes
Date: Feb 2024
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading from this file gets the effective size quota of the
scheme in bytes, which adjusted for the time quota and goals.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/reset_interval_ms
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the quotas
charge reset interval of the scheme in milliseconds.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/nr_goals
Date: Nov 2023
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a number 'N' to this file creates the number of
directories for setting automatic tuning of the scheme's
aggressiveness named '0' to 'N-1' under the goals/ directory.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/target_metric
Date: Feb 2024
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the quota
auto-tuning goal metric.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/target_value
Date: Nov 2023
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the target
value of the goal metric.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/current_value
Date: Nov 2023
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the current
value of the goal metric.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/nid
Date: Apr 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the nid
parameter of the goal.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/path
Date: Oct 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the path
parameter of the goal.
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goal_tuner
+Date: Mar 2026
+Contact: SJ Park <sj@kernel.org>
+Description: Writing to and reading from this file sets and gets the
+ goal-based effective quota auto-tuning algorithm to use.
+
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/fail_charge_num
+Date: Mar 2026
+Contact: SJ Park <sj@kernel.org>
+Description: Writing to and reading from this file sets and gets the
+ action-failed memory quota charging ratio numerator.
+
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/fail_charge_denom
+Date: Mar 2026
+Contact: SJ Park <sj@kernel.org>
+Description: Writing to and reading from this file sets and gets the
+ action-failed memory quota charging ratio denominator.
+
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/sz_permil
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the
under-quota limit regions prioritization weight for 'size' in
permil.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/nr_accesses_permil
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the
under-quota limit regions prioritization weight for
'nr_accesses' in permil.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/age_permil
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the
under-quota limit regions prioritization weight for 'age' in
permil.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/metric
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the metric
of the watermarks for the scheme. The writable/readable
keywords for this file are 'none' for disabling the watermarks
@@ -348,126 +422,132 @@ Description: Writing to and reading from this file sets and gets the metric
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/interval_us
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the metric
check interval of the watermarks for the scheme in
microseconds.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/high
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the high
watermark of the scheme in permil.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/mid
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the mid
watermark of the scheme in permil.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/low
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the low
watermark of the scheme in permil.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/nr_filters
-Date: Dec 2022
-Contact: SeongJae Park <sj@kernel.org>
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters
+Date: Feb 2025
+Contact: SJ Park <sj@kernel.org>
+Description: Directory for DAMON core layer-handled DAMOS filters.
+
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/nr_filters
+Date: Feb 2025
+Contact: SJ Park <sj@kernel.org>
Description: Writing a number 'N' to this file creates the number of
directories for setting filters of the scheme named '0' to
- 'N-1' under the filters/ directory.
+ 'N-1' under the core_filters/ directory.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/type
-Date: Dec 2022
-Contact: SeongJae Park <sj@kernel.org>
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/type
+Date: Feb 2025
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the type of
the memory of the interest. 'anon' for anonymous pages,
'memcg' for specific memory cgroup, 'young' for young pages,
'addr' for address range (an open-ended interval), or 'target'
for DAMON monitoring target can be written and read.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/memcg_path
-Date: Dec 2022
-Contact: SeongJae Park <sj@kernel.org>
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/memcg_path
+Date: Feb 2025
+Contact: SJ Park <sj@kernel.org>
Description: If 'memcg' is written to the 'type' file, writing to and
reading from this file sets and gets the path to the memory
cgroup of the interest.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/addr_start
-Date: Jul 2023
-Contact: SeongJae Park <sj@kernel.org>
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/addr_start
+Date: Feb 2025
+Contact: SJ Park <sj@kernel.org>
Description: If 'addr' is written to the 'type' file, writing to or reading
from this file sets or gets the start address of the address
range for the filter.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/addr_end
-Date: Jul 2023
-Contact: SeongJae Park <sj@kernel.org>
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/addr_end
+Date: Feb 2025
+Contact: SJ Park <sj@kernel.org>
Description: If 'addr' is written to the 'type' file, writing to or reading
from this file sets or gets the end address of the address
range for the filter.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/min
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/min
Date: Feb 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: If 'hugepage_size' is written to the 'type' file, writing to
or reading from this file sets or gets the minimum size of the
hugepage for the filter.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/max
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/max
Date: Feb 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: If 'hugepage_size' is written to the 'type' file, writing to
or reading from this file sets or gets the maximum size of the
hugepage for the filter.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/target_idx
-Date: Dec 2022
-Contact: SeongJae Park <sj@kernel.org>
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/damon_target_idx
+Date: Feb 2025
+Contact: SJ Park <sj@kernel.org>
Description: If 'target' is written to the 'type' file, writing to or
reading from this file sets or gets the index of the DAMON
monitoring target of the interest.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/matching
-Date: Dec 2022
-Contact: SeongJae Park <sj@kernel.org>
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/matching
+Date: Feb 2025
+Contact: SJ Park <sj@kernel.org>
Description: Writing 'Y' or 'N' to this file sets whether the filter is for
the memory of the 'type', or all except the 'type'.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/allow
-Date: Jan 2025
-Contact: SeongJae Park <sj@kernel.org>
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/allow
+Date: Feb 2025
+Contact: SJ Park <sj@kernel.org>
Description: Writing 'Y' or 'N' to this file sets whether to allow or reject
applying the scheme's action to the memory that satisfies the
'type' and the 'matching' of the directory.
-What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters
-Date: Feb 2025
-Contact: SeongJae Park <sj@kernel.org>
-Description: Directory for DAMON core layer-handled DAMOS filters. Files
- under this directory works same to those of
- /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters
- directory.
-
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/ops_filters
Date: Feb 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Directory for DAMON operations set layer-handled DAMOS filters.
Files under this directory works same to those of
- /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters
+ /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters
directory.
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters
+Date: Dec 2022
+Contact: SJ Park <sj@kernel.org>
+Description: Directory for DAMOS filters. Files under this directory works
+ same to those of
+ /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/{core,ops}_filters
+ directory. This is deprecated. Use the core_filters and
+ ops_filters instead.
+
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/dests/nr_dests
Date: Jul 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a number 'N' to this file creates the number of
directories for setting action destinations of the scheme named
'0' to 'N-1' under the dests/ directory.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/dests/<D>/id
Date: Jul 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the id of
the DAMOS action destination. For DAMOS_MIGRATE_{HOT,COLD}
actions, the destination node's node id can be written and
@@ -475,98 +555,110 @@ Description: Writing to and reading from this file sets and gets the id of
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/dests/<D>/weight
Date: Jul 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing to and reading from this file sets and gets the weight
of the DAMOS action destination to select as the destination of
each action among the destinations.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_tried
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the number of regions that the action
of the scheme has tried to be applied.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_tried
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the total size of regions that the
action of the scheme has tried to be applied in bytes.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_applied
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the number of regions that the action
of the scheme has successfully applied.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_applied
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the total size of regions that the
action of the scheme has successfully applied in bytes.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_ops_filter_passed
Date: Dec 2024
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the total size of memory that passed
DAMON operations layer-handled filters of the scheme in bytes.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/qt_exceeds
Date: Mar 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the number of the exceed events of
the scheme's quotas.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_snapshots
Date: Dec 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the total number of DAMON snapshots
that the scheme has tried to be applied.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/max_nr_snapshots
Date: Dec 2025
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Writing a number to this file sets the upper limit of
nr_snapshots that deactivates the scheme when the limit is
reached or exceeded.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/total_bytes
Date: Jul 2023
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the total amount of memory that
corresponding DAMON-based Operation Scheme's action has tried
to be applied.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/start
Date: Oct 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the start address of a memory region
that corresponding DAMON-based Operation Scheme's action has
tried to be applied.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/end
Date: Oct 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the end address of a memory region
that corresponding DAMON-based Operation Scheme's action has
tried to be applied.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/nr_accesses
Date: Oct 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the 'nr_accesses' of a memory region
that corresponding DAMON-based Operation Scheme's action has
tried to be applied.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/age
Date: Oct 2022
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the 'age' of a memory region that
corresponding DAMON-based Operation Scheme's action has tried
to be applied.
What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/sz_filter_passed
Date: Dec 2024
-Contact: SeongJae Park <sj@kernel.org>
+Contact: SJ Park <sj@kernel.org>
Description: Reading this file returns the size of the memory in the region
that passed DAMON operations layer-handled filters of the
scheme in bytes.
+
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/probes/
+Date: May 2026
+Contact: SJ Park <sj@kernel.org>
+Description: Directory for DAMON data-attribute monitoring probes of the
+ region.
+
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/probes/<P>/hits
+Date: May 2026
+Contact: SJ Park <sj@kernel.org>
+Description: Reading this file returns the number of data-attribute
+ monitoring probe-hit positive samples of the region.
diff --git a/Documentation/ABI/testing/sysfs-kernel-slab b/Documentation/ABI/testing/sysfs-kernel-slab
index b26e4299f822..c52034e3e794 100644
--- a/Documentation/ABI/testing/sysfs-kernel-slab
+++ b/Documentation/ABI/testing/sysfs-kernel-slab
@@ -113,8 +113,10 @@ KernelVersion: 2.6.22
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
Christoph Lameter <cl@gentwo.org>
Description:
- The cpu_slabs file is read-only and displays how many cpu slabs
- are active and their NUMA locality.
+ The cpu_slabs file is read-only. It is deprecated and always
+ reads "0" since the removal of per-cpu slabs in Linux 7.0. It
+ previously displayed how many cpu slabs were active and their
+ NUMA locality. The file is kept for backwards compatibility.
What: /sys/kernel/slab/<cache>/cpuslab_flush
Date: April 2009
@@ -509,12 +511,16 @@ What: /sys/kernel/slab/<cache>/slabs_cpu_partial
Date: Aug 2011
Contact: Christoph Lameter <cl@gentwo.org>
Description:
- This read-only file shows the number of partialli allocated
- frozen slabs.
+ This read-only file is deprecated and always reads "0(0)" since
+ the removal of per-cpu partial slabs in Linux 7.0. It previously
+ showed the number of partially allocated frozen slabs. The file
+ is kept for backwards compatibility.
What: /sys/kernel/slab/<cache>/cpu_partial
Date: Aug 2011
Contact: Christoph Lameter <cl@gentwo.org>
Description:
- This read-only file shows the number of per cpu partial
- pages to keep around.
+ This file is deprecated and always reads "0" since the removal of
+ per-cpu partial slabs in Linux 7.0. It previously showed the
+ number of per-cpu partial pages to keep around. The file is kept
+ for backwards compatibility.
diff --git a/Documentation/ABI/testing/sysfs-module b/Documentation/ABI/testing/sysfs-module
index 6bc9af6229f0..d5b7d19bd310 100644
--- a/Documentation/ABI/testing/sysfs-module
+++ b/Documentation/ABI/testing/sysfs-module
@@ -48,6 +48,15 @@ Contact: Kay Sievers <kay.sievers@vrfy.org>
Description: Show the initialization state(live, coming, going) of
the module.
+What: /sys/module/*/import_ns
+Date: January 2026
+KernelVersion: 7.1
+Contact: linux-modules@vger.kernel.org
+Description: List of symbol namespaces imported by this module via
+ MODULE_IMPORT_NS(). Each namespace appears on a separate line.
+ This file only exists for modules that import at least one
+ namespace.
+
What: /sys/module/*/taint
Date: Jan 2012
KernelVersion: 3.3
diff --git a/Documentation/ABI/testing/sysfs-platform-asus-wmi b/Documentation/ABI/testing/sysfs-platform-asus-wmi
index 89acb6638df8..f9825c6150b5 100644
--- a/Documentation/ABI/testing/sysfs-platform-asus-wmi
+++ b/Documentation/ABI/testing/sysfs-platform-asus-wmi
@@ -58,6 +58,15 @@ Description:
* 1 - overboost,
* 2 - silent
+What: /sys/devices/platform/<platform>/keystone
+Date: Jun 2026
+KernelVersion: 7.2
+Contact: "Dariusz FigzaƂ" <dariuszfigzal@gmail.com>
+Description:
+ Reports the Keystone dongle insert state (read-only):
+ * 0 - not inserted
+ * 1 - inserted
+
What: /sys/devices/platform/<platform>/gpu_mux_mode
Date: Aug 2022
KernelVersion: 6.1
diff --git a/Documentation/ABI/testing/sysfs-platform-dfl-port b/Documentation/ABI/testing/sysfs-platform-dfl-port
index 65658267fcc0..40e555abca20 100644
--- a/Documentation/ABI/testing/sysfs-platform-dfl-port
+++ b/Documentation/ABI/testing/sysfs-platform-dfl-port
@@ -84,7 +84,7 @@ Description: Read-Write. Read this file to get errors detected on port and
to clear errors. Write fails with -EINVAL if input parsing
fails or input error code doesn't match. Write fails with
-EBUSY or -ETIMEDOUT if error can't be cleared as hardware
- in low power state (-EBUSY) or not respoding (-ETIMEDOUT).
+ in low power state (-EBUSY) or not responding (-ETIMEDOUT).
What: /sys/bus/platform/devices/dfl-port.0/errors/first_error
Date: August 2019
diff --git a/Documentation/ABI/testing/sysfs-uevent b/Documentation/ABI/testing/sysfs-uevent
index 0b6227706b35..c15e18c47a0e 100644
--- a/Documentation/ABI/testing/sysfs-uevent
+++ b/Documentation/ABI/testing/sysfs-uevent
@@ -8,7 +8,7 @@ Description:
Recognized extended format is::
- ACTION [UUID [KEY=VALUE ...]
+ ACTION [UUID [KEY=VALUE ...]]
The ACTION is compulsory - it is the name of the uevent
action (``add``, ``change``, ``remove``). There is no change