From patchwork Tue Nov 21 10:18:43 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shiju Jose X-Patchwork-Id: 13462767 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 CBA06C54FB9 for ; Tue, 21 Nov 2023 10:19:25 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0304E6B0415; Tue, 21 Nov 2023 05:19:14 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id EF9F36B041C; Tue, 21 Nov 2023 05:19:13 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D717F6B041D; Tue, 21 Nov 2023 05:19:13 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id C7F146B0415 for ; Tue, 21 Nov 2023 05:19:13 -0500 (EST) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 8FEB11A0737 for ; Tue, 21 Nov 2023 10:19:13 +0000 (UTC) X-FDA: 81481563786.01.423A2FB Received: from frasgout.his.huawei.com (frasgout.his.huawei.com [185.176.79.56]) by imf08.hostedemail.com (Postfix) with ESMTP id 844EC160003 for ; Tue, 21 Nov 2023 10:19:11 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei.com; spf=pass (imf08.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=1700561951; 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=TX/zx4A32fpJsdkAfYTyryS6pz6EMY3WZbWhHq9xiOY=; b=CHbN8Awe4M4iQoycCNSWV0tGZqcVmzjof7/QyFO7YeTdNC89k+Bm3PFlCmGiuz0PIFB88V mk7XZmnnL79L6bAxCEpNy7tzZqtR0vhzBg1XnfvrIeGH+dGCXLLqGKTzRnXZeXb+SeBTfT /3XPR4wKcHvkdMi9k0P/NrHrFZtBOW4= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei.com; spf=pass (imf08.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=1700561951; a=rsa-sha256; cv=none; b=2LbJiV3Sq4ZubyrawZZDYzVYCk5FrCPZHK6Sq/d2kGb41QffEAJztHCyINFDAmT4eNfuHy 2p4csXtBTHqJfluByT+doP7FqykMuEfjKOAd8nKWfoyBC58IYqUX7lLqS4GcYPXombXwyj rI1A2beiNLhzBMLtlZx56HnUfSvrKNU= Received: from lhrpeml500006.china.huawei.com (unknown [172.18.147.200]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4SZKxb0j8xz67ZyK; Tue, 21 Nov 2023 18:14:59 +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; Tue, 21 Nov 2023 10:19:08 +0000 From: To: , , , , , , , , CC: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH v2 10/10] cxl: scrub: sysfs: Add Documentation for CXL memory device scrub control attributes Date: Tue, 21 Nov 2023 18:18:43 +0800 Message-ID: <20231121101844.1161-11-shiju.jose@huawei.com> X-Mailer: git-send-email 2.35.1.windows.2 In-Reply-To: <20231121101844.1161-1-shiju.jose@huawei.com> References: <20231121101844.1161-1-shiju.jose@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.122.247.234] X-ClientProxiedBy: lhrpeml100005.china.huawei.com (7.191.160.25) To lhrpeml500006.china.huawei.com (7.191.161.198) X-CFilter-Loop: Reflected X-Rspamd-Queue-Id: 844EC160003 X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: n3ugryhqxprmh6jseaqeuc4zokfiro3n X-HE-Tag: 1700561951-611467 X-HE-Meta: U2FsdGVkX197sSVOoT7Z4DGXbg05gvxQF0ZCLbOGV8I9pmKsvS8PdjBanut9sb2K0CdRv1HIaypkHvg8F4rIjCElCVx5BvhrrpoOmdoNK0RwG5M/gdfSrbdAgd2oUhayE+5oohL1DcFLfyLIxxFsFJNkdJFPRsVxaMbeEYGbKf0nhozd2Nnp2/xuSYNK5wZHJkJD8mudCU69URVll/+gcc5NsSvno7KBCRejElkEdi+gfHp3CYYOvfUC2884oMn3eMe+4I4qifNJd4xopCG2qp9TeTxmumWIniBqQDe6WGrryUvv2q9Yna8p0F4m9svf+ciC/NhoGu9o0xkubyfSyB8W0cp2cvCJRqsWTSQhL7Rku5df0dfsQkbTqI/jAXxh4uqJvn5MuCDBowLDQB2NET+FjXY1vqDknb5zonAf4IMctPdyuJnQK9h28xDFwWgX/K7Qd6EJyg7WqOXYqK+cDkEavc2F9RjSix7oTJNbzsU2KayU5k9W9cOh1Y8T/pFlOYLf0NtwkA/eRmuru5NnC8H2gFx4eCk9voLdjJX7MlDAUP7UcQK7IDLkTkSFS8bV6MOXoVUySiVGshPBAXd07FmBPa7mGBeQMhOI0zyh0IKHMMwL1B6qSZFuZqSUh/414DZbdG73/pjjBSEtTJ+GwBjRhigJOtJBaScFSVuA6v98x67kE1d1m7V8eVTcbHtTBI5lT8SOBamJoSrI6qE7fqJcvLwMmA4gJMPj6R6CxQbyzIpSJhylPwSxbF6G7dH3DaracBH5VIPUKpJjJAX1QGevPSDVczbyR81KDiUwC3Geh8Zdy78d7unCDxppnVhhKsMaQXgd9WZnA5BS207B+U61mgvNn1k3JQ6SwQ3MDLf0UZKVB2cTrd1NMymFBdqWqGiD24ED73u4IWWgOfDVKtkKHL2axqN3onokilVM52W15GsQ7SSgO/jd2opvyaNQ7ga9bW2XQg9c4WjQRuU +m76JvI7 nJ5M3zrxfHoWDmGb8dtjbHkuGMYlCsmV9OqzzIGYLFtr/jZhg0+R0H7seG3iMMQEe4rSLFVE57JyvuZRvm2Hu9sCJNPT6ma/wRkCSiSbN8xjmcHYp1Moe8cwI/Q1aYoJvIKt1cPu5upBX3PcgXorduiqnrfdOdD4DK7hb1+Fr0qujVM3AglXJyHQP/tU8PGlCqetXUTqBj0b718B+1JWjhXyRN1Ky5mXMfZG+ 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 entries for the CXL memory device scrub control attributes those are exposed in /sys/class/scrub/ by the scrub driver. These attributes support 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.