[PATCH v4 10/11] memory: scrub: sysfs: Add Documentation for set of common scrub attributes

From: shiju.jose
Date: Thu Nov 30 2023 - 14:24:01 EST


From: Shiju Jose <shiju.jose@xxxxxxxxxx>

Add sysfs documentation for the set of common scrub attributes those are
exposed in /sys/class/scrub/ by the scrub configure driver and support
user to configuring attributes of a scrub device.

Signed-off-by: Shiju Jose <shiju.jose@xxxxxxxxxx>
---
.../ABI/testing/sysfs-class-scrub-configure | 82 +++++++++++++++++++
1 file changed, 82 insertions(+)
create mode 100644 Documentation/ABI/testing/sysfs-class-scrub-configure

diff --git a/Documentation/ABI/testing/sysfs-class-scrub-configure b/Documentation/ABI/testing/sysfs-class-scrub-configure
new file mode 100644
index 000000000000..5e965b3ad088
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-class-scrub-configure
@@ -0,0 +1,82 @@
+What: /sys/class/scrub/
+Date: November 2023
+KernelVersion: 6.8
+Contact: linux-kernel@xxxxxxxxxxxxxxx
+Description:
+ The scrub/ class subdirectory belongs to the
+ scrubber subsystem.
+
+What: /sys/class/scrub/scrubX/
+Date: November 2023
+KernelVersion: 6.8
+Contact: linux-kernel@xxxxxxxxxxxxxxx
+Description:
+ The /sys/class/scrub/scrub{0,1,2,3,...} directories
+ correspond to each scrub device.
+
+What: /sys/class/scrub/scrubX/name
+Date: November 2023
+KernelVersion: 6.8
+Contact: linux-kernel@xxxxxxxxxxxxxxx
+Description:
+ (RO) name of the memory scrub device
+
+What: /sys/class/scrub/scrubX/regionY/
+Date: November 2023
+KernelVersion: 6.8
+Contact: linux-kernel@xxxxxxxxxxxxxxx
+Description:
+ The /sys/class/scrub/scrubX/region{0,1,2,3,...}
+ directories correspond to each scrub region under a scrub device.
+ Scrub region is a physical address range for which scrub may be
+ separately controlled. Regions may overlap in which case the
+ scrubbing rate of the overlapped memory will be at least that
+ expected due to each overlapping region.
+
+What: /sys/class/scrub/scrubX/regionY/addr_base
+Date: November 2023
+KernelVersion: 6.8
+Contact: linux-kernel@xxxxxxxxxxxxxxx
+Description:
+ (RW) The base of the address range of the memory region
+ to be scrubbed.
+ On reading, returns the base of the memory region for
+ the actual address range(The platform calculates
+ the nearest patrol scrub boundary address from where
+ it can start scrub).
+
+What: /sys/class/scrub/scrubX/regionY/addr_size
+Date: November 2023
+KernelVersion: 6.8
+Contact: linux-kernel@xxxxxxxxxxxxxxx
+Description:
+ (RW) The size of the address range to be scrubbed.
+ On reading, returns the size of the memory region for
+ the actual address range.
+
+What: /sys/class/scrub/scrubX/regionY/enable
+Date: November 2023
+KernelVersion: 6.8
+Contact: linux-kernel@xxxxxxxxxxxxxxx
+Description:
+ (WO) Start/Stop scrub the memory region.
+ 1 - enable the memory scrub.
+ 0 - disable the memory scrub..
+
+What: /sys/class/scrub/scrubX/regionY/speed_available
+Date: November 2023
+KernelVersion: 6.8
+Contact: linux-kernel@xxxxxxxxxxxxxxx
+Description:
+ (RO) Supported range for the scrub speed(scrub rate)
+ by the scrubber for a memory region.
+ The unit of the scrub rate vary depends on the scrub.
+
+What: /sys/class/scrub/scrubX/regionY/speed
+Date: November 2023
+KernelVersion: 6.8
+Contact: linux-kernel@xxxxxxxxxxxxxxx
+Description:
+ (RW) The scrub speed(scrub rate) on the memory region specified
+ and it must be with in the supported range by the scrub.
+ The unit of the scrub rate vary depends on the scrub.
--
2.34.1