Lines Matching +full:per +full:- +full:device

1 .. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.2-no-invariants-or-later
7 Copyright (c) 2024-2025 HiSilicon Limited.
11 Invariant Sections, Front-Cover Texts nor Back-Cover Texts.
14 - Written for: 6.15
17 ------------
24 Memory scrubbing is a feature where an ECC (Error-Correcting Code) engine
49 2. On-demand scrubbing for a specific address range or region of memory.
52 identified, such as CXL memory device patrol scrub, CXL DDR5 ECS, ACPI
65 -----------------------------------------
68 identified, including the CXL memory device patrol scrub, CXL DDR5 ECS,
70 and software-based memory scrubbers.
74 on-demand scrubbing (e.g., ACPI RAS2, ACPI ARS). However, the scrub control
79 2. User-space scrub controls allow users to disable scrubbing if necessary,
81 rate for performance-aware operations where background activities need to
84 3. User-space tools enable on-demand scrubbing for specific address ranges,
87 4. User-space tools can also control memory DIMM scrubbing at a configurable
97 be a system-wide BIOS or similar control to manage scrub settings for a CXL
98 device added after boot. Determining these settings is a policy decision,
105 ------------------
110 CXL spec r3.1 [1]_ section 8.2.9.9.11.1 describes the memory device patrol
111 scrub control feature. The device patrol scrub proactively locates and makes
118 scrub rate that the device is capable of. In the CXL driver, the
119 number of seconds per scrub cycles, which user requests via sysfs, is
120 rescaled to hours per scrub cycles.
123 with performance-aware operations which require the background operations to
130 - a feature defined in the JEDEC DDR5 SDRAM Specification (JESD79-5) and
131 allowing DRAM to internally read, correct single-bit errors, and write back
135 The DDR5 device contains number of memory media Field Replaceable Units (FRU)
136 per device. The DDR5 ECS feature and thus the ECS control driver supports
137 configuring the ECS parameters per FRU.
139 ACPI RAS2 Hardware-based Memory Scrubbing
148 are specific to memory. RAS2 PCC sub-spaces for memory-specific RAS features
151 The platform can use the hardware-based memory scrubbing feature to expose
152 controls and capabilities associated with hardware-based memory scrub
153 engines. The RAS2 memory scrubbing feature supports as per spec,
159 as well as on-demand scrubbing for a specific region of memory.
170 The following functions are supported as per the specification:
173 supports the ACPI NVDIMM Root Device Unconsumed Error Notification.
190 .. [1] https://computeexpresslink.org/cxl-specification/
197 +--------------+-----------+-----------+-----------+-----------+
200 +--------------+-----------+-----------+-----------+-----------+
202 | On-demand | Supported | No | No | Supported |
205 +--------------+-----------+-----------+-----------+-----------+
210 +--------------+-----------+-----------+-----------+-----------+
212 | Mode of | Scrub ctrl| per device| per memory| Unknown |
213 | scrubbing | per NUMA | | media | |
215 +--------------+-----------+-----------+-----------+-----------+
220 +--------------+-----------+-----------+-----------+-----------+
225 +--------------+-----------+-----------+-----------+-----------+
230 +--------------+-----------+-----------+-----------+-----------+
235 +--------------+-----------+-----------+-----------+-----------+
237 | Scrub | on-demand | No | No | Supported |
240 +--------------+-----------+-----------+-----------+-----------+
245 +--------------+-----------+-----------+-----------+-----------+
250 +--------------+-----------+-----------+-----------+-----------+
253 ---------------
258 /sys/bus/edac/devices/<dev-name>/scrubX/
261 -----
264 `Documentation/ABI/testing/sysfs-edac-scrub`
266 `Documentation/ABI/testing/sysfs-edac-ecs`
269 --------
277 - Scrubbing is needed at device granularity because a device is showing
280 - Scrubbing may apply to memory that isn't online at all yet. Likely this
283 - Scrubbing at a higher rate because the monitor software has determined that
287 1.1. Device based scrubbing
290 via CXL devices. Device-based scrubbing is used for the first use case
293 When combining control via the device interfaces and region interfaces,
297 `Documentation/ABI/testing/sysfs-edac-scrub`
306 constituent devices and program them separately. The scrub rate for each device
307 covers the whole device. Thus if multiple regions use parts of that device then
311 Region-based scrubbing is used for the third use case described in
321 2. Take each device for which enhanced scrubbing is required (higher rate) and
327 `Documentation/ABI/testing/sysfs-edac-scrub`
331 The Error Check Scrub (ECS) feature enables a memory device to perform error
332 checking and correction (ECC) and count single-bit errors. The associated
334 device. CXL ECS control allows the host, thus the userspace, to change the
335 attributes for error count mode, threshold number of errors per segment
338 initiating Error Check Scrub on a memory device may lie with the memory
342 `Documentation/ABI/testing/sysfs-edac-ecs`