From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from SA9PR02CU001.outbound.protection.outlook.com (mail-southcentralusazon11013069.outbound.protection.outlook.com [40.93.196.69]) (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 4902F33F8B4 for ; Thu, 21 May 2026 07:30:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.93.196.69 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779348658; cv=fail; b=bX8kyTmpKRiGExUNU6Ee8F2MU++qUzJrPKxFyQw+k2KD/sg67B3bXThSG9Z3Is2WMKWxBRZa8tlPjIUbLjh4sSBN+UKBPQvzlYRGd4hAikdji/GL0gRcugvr655/9YWB161qfbwTFnj3DorVyEy7/90H9Scw3PgsU6N9YAETYgc= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779348658; c=relaxed/simple; bh=J7p8Dn/Km0ymZo/EiuKM8ZOmrctou8+rPQPfYvKbyyI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=hlmp8aHtJuh2NvYTpfUCUVUY0c/gQdj8K9HpgHx6R2slk+JKUf0bs1Ch39oegoZAOrCqo7DkT11BswQlVuhgYpZSV1uny9Mg0YRm0bS8bg5ajIY386sVlGR0MGzDNy60Q2g/5FwEjHn6gaI0piV67azjk0z1LfvAXDTKbBLsXHk= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=TK2CnSFj; arc=fail smtp.client-ip=40.93.196.69 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="TK2CnSFj" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=m9PyxXTr2jsFiw9XOivdSZLrZQYpqPCSQKZbs+bEzgxTM2TH/eO0TskYjELSKwGrZocKB8Swh7H3gaLxy2TIMFTCObsw0EFGnADAXXG28cV16V+cScOYQcDNHlTezRQyUgduo3fRj1b3N8KJWsZVSsdKnktpECZB5RSdP5Nt/kMevl0N8XanPtsSK4a8Jp0OzkueMiWkm8VbPRBfKHlRkGxi0R0sSjIjDWot0HN6NXS0XyLriLMUtZui5b1D33pA0SClHL7OK0VpcpC6cBzqhM3LmrxJ5CT5R8+ST3lE/m2hVE2d2ku3fxNsqtN5leVYovTRnHhILbb52BLh41PvVA== 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=4boqme9iUjUIV4GcvFrCDeA4PvHhjJya/WtmJw6vPuE=; b=buTYUfBCiTSsMKchO3D3HurB0Krk8K5tThjkTw7tJEQFb7DTjDxbfpi9JFSPh5924VX04g7SEFRqK5wLXPM2ABYzkZF3CLifEzo+aJGu8xysc3MPew3MnlhSGRQlrrEZNEsbpuYv7vyPhvSfpNcVYtAdzwhZot7dZQiykb7If3YzOQncIQt3lkbE0PNGOI0C3FZLeWip09oqg3LIGrI+uXzo9GrhpSvhE1S69Xn649/TdhQiyRgsCSiZwl6I+rdfIk7F/wsG8Rfgj3HOD1SZ87gCBm+rWc+z3szyzrAp7UprPXafsUhSMZGO7BiqVbOXrs17WmMGaBO/MXi2k+LW2w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4boqme9iUjUIV4GcvFrCDeA4PvHhjJya/WtmJw6vPuE=; b=TK2CnSFjfFDj2YwkMRpmyzY5u1mwd0e4BaUhRoDAjbnxp9+z0I9psxV4nMt1c8fYR+V9L+wnyJoNYiyP9lGm6XgjGnKeEmHPUgmisFa33XfRGQBRJAdy0n3RFHnMfYUcUbQKA2oXzi2yFRr/kjCOzRQaXl78kwyOU5m+i0M268EbA5IYNPrs8te1fbpVtFil27fkVkY6OrogHoqn49wurF1/m9xeEsnc6NX1+nKTFJyrCX/iGnn2Zklu4rZdE9zmnw/NFXOu0VtLvlNIsNdVT8LCjqaDndOd5cooNQzeaAaenImBSH4msnEaj5QXmuICRwXbg8uc0KoTlWuiFXFPkQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS7PR12MB9474.namprd12.prod.outlook.com (2603:10b6:8:252::17) by MN2PR12MB4254.namprd12.prod.outlook.com (2603:10b6:208:1d0::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.48.14; Thu, 21 May 2026 07:30:54 +0000 Received: from DS7PR12MB9474.namprd12.prod.outlook.com ([fe80::31ad:931:ef07:8ad7]) by DS7PR12MB9474.namprd12.prod.outlook.com ([fe80::31ad:931:ef07:8ad7%6]) with mapi id 15.21.0025.016; Thu, 21 May 2026 07:30:54 +0000 From: Srirangan Madhavan To: catalin.marinas@arm.com, will@kernel.org, mark.rutland@arm.com, lpieralisi@kernel.org, sudeep.holla@arm.com Cc: conor@kernel.org, jic23@kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, vsethi@nvidia.com, jevans@nvidia.com, raghupathyk@nvidia.com, srikars@nvidia.com, nbenech@nvidia.com, alwilliamson@nvidia.com, Dan Williams , Srirangan Madhavan Subject: [RFC PATCH 1/2] arm64: smccc: add cache clean/invalidate IDs and return codes Date: Thu, 21 May 2026 07:30:46 +0000 Message-ID: <20260521073047.320614-2-smadhavan@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260521073047.320614-1-smadhavan@nvidia.com> References: <20260521073047.320614-1-smadhavan@nvidia.com> X-NVConfidentiality: public Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: BY5PR04CA0029.namprd04.prod.outlook.com (2603:10b6:a03:1d0::39) To DS7PR12MB9474.namprd12.prod.outlook.com (2603:10b6:8:252::17) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9474:EE_|MN2PR12MB4254:EE_ X-MS-Office365-Filtering-Correlation-Id: 09e503be-d9fc-489e-8186-08deb70ae437 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|366016|22082099003|18002099003|56012099003|11063799006|6133799003; X-Microsoft-Antispam-Message-Info: wkUdioVSoZ6SxiTRUTiH9APUOMlivVDhgjCotoHtxnKS08BCIAaoia1T14wClGlL2VUROn5c8Ax3QOMxyyTo7B2BXXE5fx/NJbzFiFRK0uR08B9PETiIfL1GWfFhOW4PbDSotaevGs/kOi0Ozp/MVw65qFPINl941dBRDQHzScvNP0R5SZVfTSB+HSIST0Oxo5prNiq4JjmVGQooRZLe1QlH0sv1L52LnCjTlMLfX9bwJ75Kj8yUciECMABnp1lMq0BWvI6WX2yWw3mAl0d3df0VXyyFaXuGrV6VOzwUQMaconS7GkiEzBc48p7ASmzXB3iBPRHq+6jUuDOtCJUXB4ZbYxi+nQH0fsk04Z0gW6cWmx6C9WVfjxT8fcPvwmvNdMSZL8Duvouyi31NjpgycbCfY4rf4LcTzO4CyJvoFmWjpUHUDQjIDlVfOpzd7q3Z3lmsl/7JUgJChoTsSuWEsMqyZy9Pkq5EaQ4LnjbMRzTj2vs9VZ9nCxQxGIsdC/xk22jebSuIlGhzsKm8u8HrB7MwNWR+QxT2xHS1t239ptb0sgqRVKF9blh1PweTin9MxWK0Li8FtSSkR+RNffMbze30MBC5IK96DGo6cj7SWJWyqVElKAEj68dNd/NRWd96kQTMvg/HozCRH3vne0Nfmh79rTNqs5fu9rQ1Z1ImC1gWpdmf+UW5eAojFYWbK8/x X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR12MB9474.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(366016)(22082099003)(18002099003)(56012099003)(11063799006)(6133799003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?QJ3w7AikCdVpw1fD/YlZqbzYZ7QMcr4lHK7G4WB3uCUAg+F/bxABmYsYAhpi?= =?us-ascii?Q?dbUI4eTOInMQBhzCzCnDVBrxSxBv1h71Nb5GPt3SceYMrzPDP7VXUzlvPScS?= =?us-ascii?Q?MH9Ian95rI///40fROTMcdlgQv+myZJ0HqAbzv+xYgTYnuZFqJg/hBnJlVie?= =?us-ascii?Q?DS8WbE8xXmsgOocAJXtJewv3nwuP4C0qaiYvEu0irEBR2wkKFkatBm5T/ibm?= =?us-ascii?Q?aTv6YA893a4j6DV3uzRtYq8jEi+PYw5cIQ2WzrWLwwtVYKJQsKC5/wyCf7ou?= =?us-ascii?Q?F2iDFhbVXeNMcimz3LZ+jrOP8F7G+Hh+zqEE6u9Gks4LFb/esz+LvajTZQn0?= =?us-ascii?Q?jsENlzmeyJCVsmYL/IehUszkAAvBKFgkvcsriEJhrSv2Mbq347598/MT/VvI?= =?us-ascii?Q?MbH5hZyECLgvkNOsIilAsOEXEmjFf9S/9PzWcPYXDV/s2cljkHwV60YRnVKQ?= =?us-ascii?Q?275afGBRdNyj5afn95Cw804W4hSNbO7Pf7RqaH3KYEBRnxqrm1816bar+Wl3?= =?us-ascii?Q?+5F3hmJNAgaEM5smCJEs3CNBG4i70teHXxZsXzRhrqOzZo+N1/jgm27FtPKf?= =?us-ascii?Q?HAW8FD/7xZ5fgLnaJC03ONDtovlilhCDmS76GCgaL3/jI3Ztrzu1VN9mIBn2?= =?us-ascii?Q?MF4yJht64CpdO12vg4y9peNJp6fZfGV2JnnIJGBcdYdAtStA8qBXHfKJQQZr?= =?us-ascii?Q?8PzfUodLtRuVefdK6WVYnr2jQ1V7Ygo/JcJ/iMwdgP562viEp7DdMftSwmeK?= =?us-ascii?Q?FzeMX/0aqXgbJGZaFFTvf8GyGzmPRvQ7KvbjuJXTNWvJ4fs7jxS8tznsczm0?= =?us-ascii?Q?uhQS3vtCvoL3OYT6IeyVSvrbV0WsXP3vlZaylxBzWNxJzYOr/jqfH1Q6+/MC?= =?us-ascii?Q?4fETL3JIhyWykXjkOg0RSHOCMSG1NIV+6KoLcB/+VHeJv7FrtDWeHlRHpN5d?= =?us-ascii?Q?PGcXge39d2xARIffSeGAwPrkBqqfvizvVxxcHFyzRD2q/sWVKfYhqKlPgKpY?= =?us-ascii?Q?U2mlkQh5bEKLGr7B2LB3tCNjxF2mKhGc2oafHbbsAzd+aFIWDHoZ9SzMo8+l?= =?us-ascii?Q?439iOJdjYasNWpan8tWms8xG1rz+85uYR325w9hnUR6L88c2s9G+QW6ZlhX/?= =?us-ascii?Q?esMwvtPW1MtkTmcgkV0hAWHv78QUzW96hNzjy1UKB/2L2Jdv7jlOmCb+ceQh?= =?us-ascii?Q?TcAyWrdNxGXZVdkl1hT5HdX4CP6p/xjqv6XAJskSD7tEpJiqjtCJJ7TOkt11?= =?us-ascii?Q?gR4qPQWrdw2+487alvwBIh1/fNmVh1LRIlFoEVE1oBkgSqHes/+RN5WqkCz6?= =?us-ascii?Q?CdYJDR5AYed+EDNoJa1BogM7833xNxu3AsH2t9pzWcTe5tpDaxvVTGRp7m9q?= =?us-ascii?Q?ktDbI9rn1gKxezDQ+MhSsc1OdNvZSj37q/NlcUgcVx/+7WkIXIdD2Y5hLABB?= =?us-ascii?Q?rOfFzq8BMT6Gg/jfe6izY8Vn4AQdZK+NFps6j8TGF9iHIuRtdKff9imB6cMr?= =?us-ascii?Q?Q4n9ZN1OVf2yiu0ublpRW7KxOdmSlzikI3uKtnhJJYPfz6dASDhqebWqFNpj?= =?us-ascii?Q?wxXAt2pOzzknv6VwiVJ1qhZNGlaItzYbCTAqI6pQwDRKj6GAd7UxEpTzoSl4?= =?us-ascii?Q?pFvU3N1GstMQcHcHYzU5ogq45bjbpaG1lJ8DC1WC8Pnc/OqsJDoZZPyx13rc?= =?us-ascii?Q?GmcUw84MHAcFeF6O09Kh1F0o5slhIuVO6gBVL750RCxpiC2WZ/JtgEtAV5u9?= =?us-ascii?Q?7OAbRDFjcQ=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 09e503be-d9fc-489e-8186-08deb70ae437 X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9474.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 May 2026 07:30:54.0705 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Mrsb6t9Rqmb6SqSw1mZgAaStyWkbkWN5OWBlkGwx9q12laX3yOBpioXnzkfeLGq4C0ibe3bUJ7mqG7qzt78rhQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4254 Define SMCCC Arch function IDs for CLEAN_INV_MEMREGION and its ATTRIBUTES call, and add RATE_LIMITED/BUSY return codes from DEN0028 for callers that need transient error handling. Signed-off-by: Srirangan Madhavan --- include/linux/arm-smccc.h | 17 +++++++++++++++-- tools/include/linux/arm-smccc.h | 17 +++++++++++++++-- 2 files changed, 30 insertions(+), 4 deletions(-) diff --git a/include/linux/arm-smccc.h b/include/linux/arm-smccc.h index 50b47eba7d01..cca9adbcc433 100644 --- a/include/linux/arm-smccc.h +++ b/include/linux/arm-smccc.h @@ -105,6 +105,18 @@ ARM_SMCCC_SMC_32, \ 0, 0x3fff) +#define ARM_SMCCC_ARCH_CLEAN_INV_MEMREGION \ + ARM_SMCCC_CALL_VAL(ARM_SMCCC_FAST_CALL, \ + ARM_SMCCC_SMC_64, \ + ARM_SMCCC_OWNER_ARCH, \ + 0x5) + +#define ARM_SMCCC_ARCH_CLEAN_INV_MEMREGION_ATTRIBUTES \ + ARM_SMCCC_CALL_VAL(ARM_SMCCC_FAST_CALL, \ + ARM_SMCCC_SMC_64, \ + ARM_SMCCC_OWNER_ARCH, \ + 0x6) + #define ARM_SMCCC_VENDOR_HYP_CALL_UID_FUNC_ID \ ARM_SMCCC_CALL_VAL(ARM_SMCCC_FAST_CALL, \ ARM_SMCCC_SMC_32, \ @@ -294,13 +306,14 @@ 0x53) /* - * Return codes defined in ARM DEN 0070A - * ARM DEN 0070A is now merged/consolidated into ARM DEN 0028 C + * Return codes defined by Arm SMCCC (DEN0028). */ #define SMCCC_RET_SUCCESS 0 #define SMCCC_RET_NOT_SUPPORTED -1 #define SMCCC_RET_NOT_REQUIRED -2 #define SMCCC_RET_INVALID_PARAMETER -3 +#define SMCCC_RET_RATE_LIMITED -4 +#define SMCCC_RET_BUSY -5 #ifndef __ASSEMBLY__ diff --git a/tools/include/linux/arm-smccc.h b/tools/include/linux/arm-smccc.h index 63ce9bebccd3..65fd4630e739 100644 --- a/tools/include/linux/arm-smccc.h +++ b/tools/include/linux/arm-smccc.h @@ -96,6 +96,18 @@ ARM_SMCCC_SMC_32, \ 0, 0x3fff) +#define ARM_SMCCC_ARCH_CLEAN_INV_MEMREGION \ + ARM_SMCCC_CALL_VAL(ARM_SMCCC_FAST_CALL, \ + ARM_SMCCC_SMC_64, \ + ARM_SMCCC_OWNER_ARCH, \ + 0x5) + +#define ARM_SMCCC_ARCH_CLEAN_INV_MEMREGION_ATTRIBUTES \ + ARM_SMCCC_CALL_VAL(ARM_SMCCC_FAST_CALL, \ + ARM_SMCCC_SMC_64, \ + ARM_SMCCC_OWNER_ARCH, \ + 0x6) + #define ARM_SMCCC_VENDOR_HYP_CALL_UID_FUNC_ID \ ARM_SMCCC_CALL_VAL(ARM_SMCCC_FAST_CALL, \ ARM_SMCCC_SMC_32, \ @@ -182,12 +194,13 @@ 0x53) /* - * Return codes defined in ARM DEN 0070A - * ARM DEN 0070A is now merged/consolidated into ARM DEN 0028 C + * Return codes defined by Arm SMCCC (DEN0028). */ #define SMCCC_RET_SUCCESS 0 #define SMCCC_RET_NOT_SUPPORTED -1 #define SMCCC_RET_NOT_REQUIRED -2 #define SMCCC_RET_INVALID_PARAMETER -3 +#define SMCCC_RET_RATE_LIMITED -4 +#define SMCCC_RET_BUSY -5 #endif /*__LINUX_ARM_SMCCC_H*/ -- 2.43.0