From patchwork Sun Apr 13 22:52:14 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ira Weiny X-Patchwork-Id: 14049462 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 869071A314E for ; Sun, 13 Apr 2025 22:52:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=192.198.163.18 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744584725; cv=fail; b=gZno8HhAfvcxqKVtHgBh/sBYnlOJhjqyZcbkP3YhQsUYhYVsbjPNtrs4YIk/i52R8zcqBXeD8jPxsGm4LkNSAFuJPSBJWY0hunmo/5X6KK3dQfaHoYMe4N+FDGx7ldWkAn8+ZC/qoTGR8MeuKkxJBerb2SDr8Ww7G1Hcuf0ld+c= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744584725; c=relaxed/simple; bh=ubkszuk8OOj91HHaqwNgXvdiZweiDuzDaFgiJyN6lDo=; h=From:Date:Subject:Content-Type:Message-ID:References:In-Reply-To: To:CC:MIME-Version; b=n085m+kwF4tySG8e5ZGylGl0KANmlJPizYWzJ57GwbdcwXTB/R9dWzaAJrZQnCBAKinYIEWVoKh+DU//XLYi0GCm+D5/fE7gomIKFLBkSPicM5/U+DXZ3vzh50wLa73s1sMzju/Ug49xOCs9IK8deUCavdTCWZXD7cqPxg7FZuk= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=aUK0rlOs; arc=fail smtp.client-ip=192.198.163.18 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="aUK0rlOs" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1744584724; x=1776120724; h=from:date:subject:content-transfer-encoding:message-id: references:in-reply-to:to:cc:mime-version; bh=ubkszuk8OOj91HHaqwNgXvdiZweiDuzDaFgiJyN6lDo=; b=aUK0rlOshktwjIYx0iSfbYu8lHU6qfL3U32+EKSGTM7j75ujoevPrAYU cuKnPDFCYfQdCg11rTALXCnapLWEJbZgAEFJKcT00vMj7VpRAbP6vNrg4 h7omMhAfauBeQn/IDxXJtq/aDqZoZYU7KO53qfaQXqxApQCjxschDRcvc zNXXJ7CgZ2gp/6VaCZzS3d4BIA95PCctoJDhI3SMb0xkZpgWPBLc4n/9o cRUDvzey2mB/keU81wYTdVEjcobYAljhn44JTbk/ZOUk8zCQc2ca1PeCL I+vqIOSI300U0oI1D6nHsJCsN0mDZqGq3FB1IbjGOlpoDGvy/OUZgw+80 w==; X-CSE-ConnectionGUID: PFmHxcsIRMqmLBm61JSSPw== X-CSE-MsgGUID: LJ3wwJtrTt+VOCjHo9cPMA== X-IronPort-AV: E=McAfee;i="6700,10204,11402"; a="45280906" X-IronPort-AV: E=Sophos;i="6.15,211,1739865600"; d="scan'208";a="45280906" Received: from fmviesa007.fm.intel.com ([10.60.135.147]) by fmvoesa112.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Apr 2025 15:52:02 -0700 X-CSE-ConnectionGUID: Xh9v8XCLSDC5H+iLXuSEHg== X-CSE-MsgGUID: tplrpwWXRu+e+PeQyBnsDw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.15,211,1739865600"; d="scan'208";a="129657453" Received: from orsmsx903.amr.corp.intel.com ([10.22.229.25]) by fmviesa007.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Apr 2025 15:52:01 -0700 Received: from ORSMSX901.amr.corp.intel.com (10.22.229.23) by ORSMSX903.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.14; Sun, 13 Apr 2025 15:52:00 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by ORSMSX901.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.14 via Frontend Transport; Sun, 13 Apr 2025 15:52:00 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.168) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.44; Sun, 13 Apr 2025 15:52:00 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=jZ87yonip5Zz+nSBkTMAQ1A08Ic1A3xjIjSc+uwBUMC8Z7Xye9uCtHgbOo9Mai970eCbCvDJGY5RRUd9Vywp09NCrF+wIlPZdrxL5isKZu8grSflZpD3VTz3RaxDOhh21qQLamZa6qB4F4wgPtapo99XTEf/KySYhxAYixEcAD8Dsq4YIOLtV3Zv156F8uZ71UfU9hHQhNngDbgSMIkEb3Bf8PBiyeLLlcvq1OJ0Y4PKcbzW9V3xP6CdFX71D7Ua7vlhhHpCF8Aof8GJtDWSbtVGtlj7Tcuffngv6oD1ghNwTr3Fp3bT9nl+KWOGOWHZ7HmNzBlHL9bKD55vnKlucg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=rQK0+O4GqSKPKOs9Sr/fszqYqvtsWCSqVUxvStUxO3E=; b=AzmljhdD6N+PfDkBOMNznhWXnGuM723cqfxOdsr9HWTfHBwiEzT9AuLvN5f5FLZFjV27p9Q/DUPtdT1PrflKuUpdgFT3ZIoGTCcxRXqsUAAL00FVMziaTLxlx2en2lCqsS9tyoNo7C8mg+1dMj7FZn8nC6GaohBLeh4yf4h+PaFVIJiDbjLHj9+o6Ynx+d5dva3JyIaPU2AtP+XVtLTgAD9thGBK8Ytl7ePOEWzWly0uZhhvI7V/pwTuRZaPV6i0QaDR5+65iPRUZPceNnTqZsp6PuTnMRG/4lStrW2oq/3NWfbWMwE3LxNeFX1VBVoEeqGErFIqwtCJRy9f72wrVQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; Received: from MW4PR11MB6739.namprd11.prod.outlook.com (2603:10b6:303:20b::19) by DM4PR11MB6042.namprd11.prod.outlook.com (2603:10b6:8:61::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8632.28; Sun, 13 Apr 2025 22:51:52 +0000 Received: from MW4PR11MB6739.namprd11.prod.outlook.com ([fe80::a7ad:a6e8:fced:3f24]) by MW4PR11MB6739.namprd11.prod.outlook.com ([fe80::a7ad:a6e8:fced:3f24%4]) with mapi id 15.20.8606.033; Sun, 13 Apr 2025 22:51:52 +0000 From: Ira Weiny Date: Sun, 13 Apr 2025 17:52:14 -0500 Subject: [PATCH v9 06/19] cxl/port: Add 'dynamic_ram_a' to endpoint decoder mode Message-ID: <20250413-dcd-type2-upstream-v9-6-1d4911a0b365@intel.com> References: <20250413-dcd-type2-upstream-v9-0-1d4911a0b365@intel.com> In-Reply-To: <20250413-dcd-type2-upstream-v9-0-1d4911a0b365@intel.com> To: Dave Jiang , Fan Ni , "Jonathan Cameron" CC: Dan Williams , Davidlohr Bueso , Alison Schofield , "Vishal Verma" , Ira Weiny , , , X-Mailer: b4 0.15-dev-c25d1 X-Developer-Signature: v=1; a=ed25519-sha256; t=1744584735; l=3257; i=ira.weiny@intel.com; s=20221211; h=from:subject:message-id; bh=ubkszuk8OOj91HHaqwNgXvdiZweiDuzDaFgiJyN6lDo=; b=PqrpuoOgqfEFIv5Kmfg2/Jpcf6p/+KUEk1ohlJOdVsWF+mMLc/Dtjg2VYYzjPMSOZX5GjI+pY XENW8xJ4pD/BPaI+4OsCHUdn12rI5HJccuek6nFn/yuQs+M8l0hIKy2 X-Developer-Key: i=ira.weiny@intel.com; a=ed25519; pk=noldbkG+Wp1qXRrrkfY1QJpDf7QsOEthbOT7vm0PqsE= X-ClientProxiedBy: MW4PR03CA0227.namprd03.prod.outlook.com (2603:10b6:303:b9::22) To MW4PR11MB6739.namprd11.prod.outlook.com (2603:10b6:303:20b::19) Precedence: bulk X-Mailing-List: nvdimm@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MW4PR11MB6739:EE_|DM4PR11MB6042:EE_ X-MS-Office365-Filtering-Correlation-Id: d62e3194-dadb-4df5-6767-08dd7addc807 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|366016; X-Microsoft-Antispam-Message-Info: =?utf-8?q?eYGXQOB8XKmi9V+2ETOIr/VJsA8b31L?= =?utf-8?q?qldjAUKfOhC8QLE9WhYv98Yk7nItL0cgWFtLRXB+EK4hYbNL9h9dNNzwCoNNzQRLA?= =?utf-8?q?/p7QmHYYTHgTDZ8hLux2z9KwVkF+LxO9dw3gbj/xIQpodvGq26JpEiBqqQj63iOQc?= =?utf-8?q?eRylsbnOwazahClq1cNHQQXnxhdpfgXK1Z0DxfEVrQ2D0pbsWBsqxqwa4GL3Md2Vv?= =?utf-8?q?9+pVd9Cq7e3uPdiQDT04hjfsmG4+2T02V/ctk4YNQusgiwTgj8eKDAhYELr1JbGFk?= =?utf-8?q?OzuI7X9KBM7HxITh8O0VaUp9jiD48Ebu7ruEdeasZDzlWgo3tIG3v4NU8wt2NCjyV?= =?utf-8?q?sLyxv046yjBA1Kh8UXhrddjq9lIB8SOKKBLTteeNpnK9v2MvTZzLMZxhAZvvTZHJW?= =?utf-8?q?tTPW1CAns7TnolexXU0tex8XudXhKj0BSeP/3jSN2hehlSoEAi6PzL9GjjuWMrXA0?= =?utf-8?q?qpvd5KVxL/yBhkVmjAXDPIhCcFGBk5NF5fKccAjGd2lhO6d8Yw0icdRqf3MqrlOX5?= =?utf-8?q?iExTWfzzk8XytV8Zc26fnizNaHrnNkDX9gZGCYNUU3mq35L7hWpX+DBGtDQIsHAUJ?= =?utf-8?q?LuGFDGWn/B52qokJZ+wrFoO+7BOw0a7QOUAdG3zhLLQT3yf3HtYMdOluQx8sC4H4E?= =?utf-8?q?GLeJMT0PO1+rUh9khJBZTexUBX259TAbDHivqc4M54u5mQmrtBc6XursPu07z1E1t?= =?utf-8?q?JUjVHl2QuUsGsGftNobEVJuBi/wjsWqnf3SeGhMjqqDIBhoUsHHOiqKn3HpxGmroe?= =?utf-8?q?hx4QsPskbuaXT/0yuf+aPD6IJPbUWJpSNy1ECjtEHQjnHsURmipcAYVoHFvOoYXPz?= =?utf-8?q?4cleS+lkQPmSVBdq/B6TqOZVRleLBlHiIrcyCfiRTqyPAVnOgG9+1OaagKZ6fSpsz?= =?utf-8?q?0/XsXukSiYmbN+izZs3NxNhbWQkClzcisbTOlKiGjbBbQdDGsNlcbriPZfn7zbXRF?= =?utf-8?q?uRJBRYNDWBomwhR5YnzUhb0adQmZoXLXZyivKtPBS+smjjIihrBQ1eea8/UTBl+it?= =?utf-8?q?3joUILgHri1ZsBBS2cxICbSlmuO6UFXdC7GkPlk2mJIKxxUzJzUCLFevNIhe5/VDF?= =?utf-8?q?r93Eu7ScwkIBUmM/MivXUWGBQZexaGBMkxF0oG4ddweYFuEY5lwXS66+BV4TOdvJa?= =?utf-8?q?EL/3BFeZhtp8/QQDBFti7AQzAJVrY9RF2xaLSbuBraPR4BHenmeDOiA7oyB0Bevwf?= =?utf-8?q?DFba+kdDSmXn13YsYsj0/x72PEYKBl5hUecCUzQUiBAvH9V3IMZololMm+55UQ6LP?= =?utf-8?q?LRQzIEZeweqDUw3WylPozgFg3gziMATQhmZz9MND8GLjCLcSSL+Z24rRronmnqlam?= =?utf-8?q?XYYM9bh9MGUMuwIZvTxB6Hz+OqwwaomQqKuNneiv/HOhHF7R/bei6Zo=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR11MB6739.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?3InJo41hAEvWgKOE4y1Fl9x/gwas?= =?utf-8?q?Ifp2uOFhC+pA5jWUkFYNb+qiVNWIC2EUTDWjFalo9WPARgHUm7axDKwibnIwY+YND?= =?utf-8?q?aF8L2az/hNwX5nWgQusbTrjS+8S5OVErPaDcTg57Y7hhIezYzhVNLQCcECve8kW/r?= =?utf-8?q?iGGaca0YLRs6Szwy5nKznRNule95oxQvaQ4ApSWKk58BgaygGmWbIQwwLT0KZRvZx?= =?utf-8?q?lg1lVVkO6Jzllkj5GjbxrgHapnZO5GD06n6BmGs5+NCXCNLNi6GNvubgP0XXJM13T?= =?utf-8?q?53uMPqV70m9CQ74hIm8CIzmz5PbH9CMioRTPMHkUqxIABqMQel2kEm/8h8LQ+i19B?= =?utf-8?q?U9KHkV2lSzqEncKGAb71mF2MQDgl9yxIzaMkKGgw2SzCbfocDs8N28iYN4mZbSnFZ?= =?utf-8?q?IAZo6Dn47clx1yom0QYZ8wxPnkIRuAGyaD+aNJcfJnOblGkaKB7J6HHnRXeV5ZTtx?= =?utf-8?q?rICT7GJYmHSk002girrJMKakaroGA4cjorJPKB02Fo283Pdu2qtset0pi0DDCYbaf?= =?utf-8?q?nPeeif/ZxpW2gNpm0pATPKwh2MP8oV3yJTwTgYcrngU9gjZxbiCJ2bxe02PMT5kki?= =?utf-8?q?zeKuKRqRzaK6yD7wpFirddqsHlIEUeD2enoxCh7jorAO6c5AI2arKBnyNWliExuON?= =?utf-8?q?NgrpG7tPBX/rcCZtwi5dwUHlJGlslYoKprLcPjBbfcMrouZiYkGQ4X3jRfJ0dG6s3?= =?utf-8?q?S4S8rmWsG6lfwy5S92CisTUkeMIqh32kBQJG/7rtxwZF5oa9OluZUnw3z3/gdn0ep?= =?utf-8?q?4jfJImLGDQmcubryWTlS/mPutswHBxSQzZVyYRSXp8SMYumQD9l7xIC42Hb+0LB4o?= =?utf-8?q?2H4zAtQDqtO+vSfQSCIdt6QqD4Cd2OuvRiG0Z8BeR6K7TO56zoWWjRbPfSKSjDO0O?= =?utf-8?q?OaTMk6GkROlF9GfBIodfWMQ+xP9HQ/elYYZe3+bdBGd3ev1bRxsvglhqbIEoUrlQ+?= =?utf-8?q?xkIWM5SRVn3cPkrpbl8up7v1Pj72w78SWvrsV/FVygYuU7f6h4kGw52a691gs95iD?= =?utf-8?q?N7y1L719o31vpjk8uHAYWzaRQmOyL3vjPlu057dg2BpguD+x8W5HEZmGVBiLYgK+G?= =?utf-8?q?QN0EH0N7C+bWWz+iqM4zhe4k7XPRubhQfRQaxX67vyjFCjcpfis0Dlwl6kptu/jDz?= =?utf-8?q?1Caa6dOEX8ht1q9XQQIYw7b04orU+7e6Oni5Hu53GCfGNBtoefZ+Wtgtl4fx9jzFc?= =?utf-8?q?5AsnYx+lJwaMhuu5PAjFBbetx73Ci6/XcECH0eEj/Qgb3+U1mpvClQQLxROgJdHe3?= =?utf-8?q?OsOg7Ol1xTuNb5sKIKbFCvAxIyTOrCEBA3J+HneIZm54v6IoZteFaF+couRSmJ1Du?= =?utf-8?q?FrxTDf7llrvzwHi1E+4TtOkCeiwnSB7Q2VySlatUfHa87Fu2A5XFvQa2u1D/9Rcfo?= =?utf-8?q?ocBsffsyBxOMNw2vuyZXjAA5flqfaZ5JazWVmcIVyM2FdU3Vs6FTFlXPx9o+n6SSO?= =?utf-8?q?5Uxpc4NXcbEyqY19zC7zLv7fUMT/3Gq49s2C247sOBnqJkQKRNnu75Si/VnDXYEkx?= =?utf-8?q?b3gqT7GcTb8p?= X-MS-Exchange-CrossTenant-Network-Message-Id: d62e3194-dadb-4df5-6767-08dd7addc807 X-MS-Exchange-CrossTenant-AuthSource: MW4PR11MB6739.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2025 22:51:52.0536 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: vCzSVqp9hV1BqoZUQxT3PydRuagBpIaCVKOdyh+ZaSk8XeRan1Or+kWfSL81p0FPIWLz31bCYAribZPavJOy5g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR11MB6042 X-OriginatorOrg: intel.com Endpoints can now support a single dynamic ram partition following the persistent memory partition. Expand the mode to allow a decoder to point to the first dynamic ram partition. Signed-off-by: Ira Weiny Reviewed-by: Jonathan Cameron --- Changes: [iweiny: completely re-written] --- Documentation/ABI/testing/sysfs-bus-cxl | 18 +++++++++--------- drivers/cxl/core/port.c | 4 ++++ 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/Documentation/ABI/testing/sysfs-bus-cxl b/Documentation/ABI/testing/sysfs-bus-cxl index 2b59041bb410..b2754e6047ca 100644 --- a/Documentation/ABI/testing/sysfs-bus-cxl +++ b/Documentation/ABI/testing/sysfs-bus-cxl @@ -358,22 +358,22 @@ Description: What: /sys/bus/cxl/devices/decoderX.Y/mode -Date: May, 2022 -KernelVersion: v6.0 +Date: May, 2022, May 2025 +KernelVersion: v6.0, v6.16 (dynamic_ram_a) Contact: linux-cxl@vger.kernel.org Description: (RW) When a CXL decoder is of devtype "cxl_decoder_endpoint" it translates from a host physical address range, to a device local address range. Device-local address ranges are further - split into a 'ram' (volatile memory) range and 'pmem' - (persistent memory) range. The 'mode' attribute emits one of - 'ram', 'pmem', or 'none'. The 'none' indicates the decoder is - not actively decoding, or no DPA allocation policy has been - set. + split into a 'ram' (volatile memory) range, 'pmem' (persistent + memory), and 'dynamic_ram_a' (first Dynamic RAM) range. The + 'mode' attribute emits one of 'ram', 'pmem', 'dynamic_ram_a' or + 'none'. The 'none' indicates the decoder is not actively + decoding, or no DPA allocation policy has been set. 'mode' can be written, when the decoder is in the 'disabled' - state, with either 'ram' or 'pmem' to set the boundaries for the - next allocation. + state, with either 'ram', 'pmem', or 'dynamic_ram_a' to set the + boundaries for the next allocation. What: /sys/bus/cxl/devices/decoderX.Y/dpa_resource diff --git a/drivers/cxl/core/port.c b/drivers/cxl/core/port.c index 0fd6646c1a2e..e98605bd39b4 100644 --- a/drivers/cxl/core/port.c +++ b/drivers/cxl/core/port.c @@ -125,6 +125,7 @@ static DEVICE_ATTR_RO(name) CXL_DECODER_FLAG_ATTR(cap_pmem, CXL_DECODER_F_PMEM); CXL_DECODER_FLAG_ATTR(cap_ram, CXL_DECODER_F_RAM); +CXL_DECODER_FLAG_ATTR(cap_dynamic_ram_a, CXL_DECODER_F_RAM); CXL_DECODER_FLAG_ATTR(cap_type2, CXL_DECODER_F_TYPE2); CXL_DECODER_FLAG_ATTR(cap_type3, CXL_DECODER_F_TYPE3); CXL_DECODER_FLAG_ATTR(locked, CXL_DECODER_F_LOCK); @@ -219,6 +220,8 @@ static ssize_t mode_store(struct device *dev, struct device_attribute *attr, mode = CXL_PARTMODE_PMEM; else if (sysfs_streq(buf, "ram")) mode = CXL_PARTMODE_RAM; + else if (sysfs_streq(buf, "dynamic_ram_a")) + mode = CXL_PARTMODE_DYNAMIC_RAM_A; else return -EINVAL; @@ -324,6 +327,7 @@ static struct attribute_group cxl_decoder_base_attribute_group = { static struct attribute *cxl_decoder_root_attrs[] = { &dev_attr_cap_pmem.attr, &dev_attr_cap_ram.attr, + &dev_attr_cap_dynamic_ram_a.attr, &dev_attr_cap_type2.attr, &dev_attr_cap_type3.attr, &dev_attr_target_list.attr,