From patchwork Thu Nov 23 17:43:54 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shiju Jose X-Patchwork-Id: 13466483 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 469B4C5AD4C for ; Thu, 23 Nov 2023 17:44:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 111736B068C; Thu, 23 Nov 2023 12:44:19 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 0730D6B068D; Thu, 23 Nov 2023 12:44:19 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DBAD96B068E; Thu, 23 Nov 2023 12:44:18 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id CD5C16B068C for ; Thu, 23 Nov 2023 12:44:18 -0500 (EST) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 9ECB6404AB for ; Thu, 23 Nov 2023 17:44:18 +0000 (UTC) X-FDA: 81489942996.11.3F7E838 Received: from frasgout.his.huawei.com (frasgout.his.huawei.com [185.176.79.56]) by imf15.hostedemail.com (Postfix) with ESMTP id 92F25A0002 for ; Thu, 23 Nov 2023 17:44:16 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei.com; spf=pass (imf15.hostedemail.com: domain of shiju.jose@huawei.com designates 185.176.79.56 as permitted sender) smtp.mailfrom=shiju.jose@huawei.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1700761456; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=IiMsgVXrPEXlCjzvkurdHwvgrdFzuqrpBmly0YBvSSQ=; b=vKSTIGSufxo6S31DVKX0JmFVsUuCK5dIJuemzs003g1FbpTP+5Z4hdqYL8EekTcw/RXNJE C7w1E3rRxQApa1z61WGI2oTYa5sD/7fVBVCN/+hLSZ5bKzkRFjti5EBhPtYEgTwp5ee+pY pdvQNTooObXx5ncXTgMhsrbpX6cd/l0= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei.com; spf=pass (imf15.hostedemail.com: domain of shiju.jose@huawei.com designates 185.176.79.56 as permitted sender) smtp.mailfrom=shiju.jose@huawei.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1700761456; a=rsa-sha256; cv=none; b=E8wdm37g3wgKMfIeC4wOC2oTTd63IhGs8Da/MEAK5TWmjTCJGKsQwcKuq0epshyPRgxv1X l1YiIn9rS2RUsBA3Yso3+BwfIdsJAgWhFYM2I250noj0uLaOpCNrcXhORiCtljbckMgBOg PFf/p88lOp0bDxDZDIIHvUMJKA66kj8= Received: from lhrpeml500006.china.huawei.com (unknown [172.18.147.201]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4Sblk51lXTz6K5sT; Fri, 24 Nov 2023 01:39:57 +0800 (CST) Received: from SecurePC30232.china.huawei.com (10.122.247.234) by lhrpeml500006.china.huawei.com (7.191.161.198) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Thu, 23 Nov 2023 17:44:13 +0000 From: To: , , , , , , , , CC: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH v3 11/11] cxl: scrub: sysfs: Add Documentation for CXL memory device scrub control attributes Date: Fri, 24 Nov 2023 01:43:54 +0800 Message-ID: <20231123174355.1176-12-shiju.jose@huawei.com> X-Mailer: git-send-email 2.35.1.windows.2 In-Reply-To: <20231123174355.1176-1-shiju.jose@huawei.com> References: <20231123174355.1176-1-shiju.jose@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.122.247.234] X-ClientProxiedBy: lhrpeml100003.china.huawei.com (7.191.160.210) To lhrpeml500006.china.huawei.com (7.191.161.198) X-CFilter-Loop: Reflected X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 92F25A0002 X-Stat-Signature: 6gzoe5rdqbsnh64zty8gfc6msohrhpze X-Rspam-User: X-HE-Tag: 1700761456-222309 X-HE-Meta: U2FsdGVkX1/SpQnF8TsalV9rP3YmoSybCSWZ100yLY+L8310UDMN/bnhsxGJ4h3W3316dVtR9bbZUBtdg1E+slKLCZ6pF4fvk2aFqq7x4GKlbyZdtpvVGjYtE0KkVt70MhH3PwaqUaz0uSGNQ66FgFE/K3+IM8ak5R3O/ToVkJor/XciSf+NlF0r9iHXtZ1RiRFG9SHj947obNxv1Ol0m3AbqdIxWQK0mAvskty3fNeFQbPKoJ3o7fndjDJQDVWVFJNAfSGrMXo2Nhk2aW7ve77SfoGW3690Tg08cORNhsnMnQfKxQTAZmB00sFPrv/WLySBa2lloLZHisGmv6a29d3rjY5gzUJyPd8lzCdkresbTGMdNd/XmpRnoEh6eIKKJ9q3WegkmlGHRpcUZSfclnCETHFoCn2w5USOr6u1GL5QCdvGg4bl9No7f/u5pBOAisQzPYJPf57zsUinY5YiWOobewJcz4+zSRiUPX72MNFikBYpEFyCLkXecxnYHybl+aIzXsdbZq0If3X+IBHHgQljh7/Em6J/XEeMJEx+rjXusXv7+bR14TjQz+sURdttqEQNM1qVEDqhLYM3r1jxX0np09dBo4b6HHTpwHeuxlmFvDaf5a1xc1ZJjAHD7TKCach1LJgNQt4F3zLMx8fUJGqHTOyd1G2wtsCTSt08URMjI7GmAaJ7xdZkcVd82ImvwxBXkQyIXm/L8sNyB6NPM7bU7T6jDqSd+xfbEYpaxJQzncc+GT0gBDUcNNiU9ksmkD9DfIt4N9UdkKg7YXVk7QwnLboMXDAIMX59zaRvOwHzQjYEuuOmGwipQkv7SP8y4Lrv29O644AH69BIrtVhSkykbB0EMGdoB8NCC/3bnsYy9iuk8kfZo3IvQDj9e0YlxVvFDEkmK1MwtEOxqM3zHRiHWc95mMHN5woQeFHOqs/tIWyf1TBP65c21j/ij1OGgExiDuDHXdZLrywdgX3 KlT9CJoM wrXiq6zZhDfKNBVDrw4TjyKkOKiDlZzfrVda3XLyb9EBpMDzeo8ch2gHlDB0TUETqfUJOwglabNr+e7wP6ptFL+GASUTeuyCQPMaPVucB5ALXk6pNIHDWtw6GN5ezG6DPxjHpk7/afeavmaKloWPaCszV8p9bWMVDAH3Znkyda0B/QS/hnvHpvb8b4NsGP06JwglQVMIzT8573WFfxWZderfJZq0woBfMh+17 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: From: Shiju Jose Add sysfs documentation for the CXL memory device scrub control attributes those are exposed in /sys/class/scrub/ by the scrub driver. These attributes support user configuring a CXL memory device scrub. Signed-off-by: Shiju Jose --- .../testing/sysfs-class-cxl-scrub-configure | 135 ++++++++++++++++++ 1 file changed, 135 insertions(+) create mode 100644 Documentation/ABI/testing/sysfs-class-cxl-scrub-configure diff --git a/Documentation/ABI/testing/sysfs-class-cxl-scrub-configure b/Documentation/ABI/testing/sysfs-class-cxl-scrub-configure new file mode 100644 index 000000000000..57ba63d5390f --- /dev/null +++ b/Documentation/ABI/testing/sysfs-class-cxl-scrub-configure @@ -0,0 +1,135 @@ +What: /sys/class/scrub/ +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +Description: + The scrub/ class subdirectory belongs to the scrub + subsystem. + +What: /sys/class/scrub/scrubX/ +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +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@vger.kernel.org +Description: + (RO) name of the memory scrub device + +What: /sys/class/scrub/scrubX/regionY/ +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +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 or for example + memory media FRU of DDR5 ECS feature for which scrub may be + separately controlled. + +What: /sys/class/scrub/scrubX/regionY/enable +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +Description: + (WO) Start/Stop CXL memory patrol scrub. + 1 - enable the CXL memory patrol scrub. + 0 - disable the CXL memory patrol scrub. + +What: /sys/class/scrub/scrubX/regionY/speed +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +Description: + (RW) The scrub cycle to set for the CXL memory + patrol scrub and it must be within the supported + range. The unit of the scrub cycle is hour. + +What: /sys/class/scrub/scrubX/regionY/speed_available +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +Description: + (RO) Supported range of the scrub cycle by the + CXL memory patrol scrub. + The unit of the scrub cycle is hour. + +What: /sys/class/scrub/scrubX/regionY/ecs_log_entry_type +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +Description: + (RW) The log entry type of how the DDR5 ECS log is + reported. + 00b - per DRAM. + 01b - per memory media FRU. + +What: /sys/class/scrub/scrubX/regionY/ecs_log_entry_type_per_dram +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +Description: + (RO) Returns true if current log entry type of DDR5 ECS + region is per DRAM. + +What: /sys/class/scrub/scrubX/regionY/ecs_log_entry_type_per_memory_media +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +Description: + (RO) Returns true if current log entry type of DDR5 ECS + region is per memory media FRU. + +What: /sys/class/scrub/scrubX/regionY/mode +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +Description: + (RW) The mode of how the DDR5 ECS counts the errors. + 0 - ECS counts rows with errors. + 1 - ECS counts codewords with errors. + +What: /sys/class/scrub/scrubX/regionY/mode_counts_rows +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +Description: + (RO) Returns true if current mode of DDR5 ECS region + is counts rows with errors. + +What: /sys/class/scrub/scrubX/regionY/mode_counts_codewords +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +Description: + (RO) Returns true if current mode of DDR5 ECS region + is counts codewords with errors. + +What: /sys/class/scrub/scrubX/regionY/reset_counter +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +Description: + (WO) DDR5 ECS reset ECC counter. + 0 - normal, ECC counter running actively. + 1 - reset ECC counter to the default value. + +What: /sys/class/scrub/scrubX/regionY/threshold +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +Description: + (RW) DDR5 ECS threshold count per GB of memory cells. + +What: /sys/class/scrub/scrubX/regionY/threshold_available +Date: November 2023 +KernelVersion: 6.8 +Contact: linux-kernel@vger.kernel.org +Description: + (RO) Supported list of DDR5 ECS threshold count per GB of + memory cells.