From patchwork Wed Feb 12 07:40:22 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 13971281 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2056.outbound.protection.outlook.com [40.107.20.56]) (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 1F23A1B21AD for ; Wed, 12 Feb 2025 07:41:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.20.56 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739346084; cv=fail; b=YI4p5OukB6+WJqXh5ynczYI+4yKCoOFuLczwz974HYsnU0QYGTqgjLy0UyeOZ98vJgWxI3/KV9nHIFc+PmbTb/HundXbB3TRcA/DbhBRFqBZjN7PchXntrMGJTQF3SO30pQwG98zKL5fn3m1oxa3KKmp0vPocg2PlGdfmRlAf3k= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739346084; c=relaxed/simple; bh=ELwIL41txEYnXVsqlJVAe6Kei0c/P/+vK+xTIEN0sOc=; h=From:Subject:Date:Message-Id:Content-Type:To:Cc:MIME-Version; b=XvpunbHksh/yeDfJ/EnqeWrhRiAGknRGVexbbwz7J2n0w2ajxRne8vW/hBh5b0pzfy2NnbX1930PvASZ5wLyTh5E86EUXJvQQnYa+NU3M260Yu9YMj9G97PJypnup2JTYuCDK6lSwRQ/vI26W1fIatFbdQ3rOtWuKbM+ZLkC1Us= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=r9NOLl2B; arc=fail smtp.client-ip=40.107.20.56 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="r9NOLl2B" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=RGiplq6X02Hksa/tK5jE11stbk+KXjAWNVePZe9D/tof9ir2xcgJtqd2OVmZ5xMX9jzvRe2/DQWnfzGR0mn/m32+irachg31+noArSZRCIfK5Q0d3Esz3LHAvSda6IwyUcxQ3oATZbznJc/4bRM+wvunjkuOpH1PshaOdSX+7K8so0Fv6LnIPMhoIfsV7Na4D2uvwZEFWgBnqmGGXiK+sLeX8DcDJRZQYJEQAdwSepQBX+xgBOvZIUY9od2MgkABlpduc0oLfY84Xc/lXo1VBttKKZaBFSsj6UnXIqUnLWrleMGlBxzQpBREixobo+3lCTjo1lO7FNI/gUes0+SENQ== 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=TUyVxBECE8HyWdtaWnYcdoGwVXVxDuOTkNMJqAZSSBs=; b=D0PuRlSLx4vXXGuvbtPxJaJn7UBGL0e/k2fIiahUiOtCM5Zw0mhKkY9Q+Yq26LMF3so1p07fF3+7JmYAiR5JvWS2boTcqYDJIkT8CsX2YBOM610tQ5lsZx/nWEcceJXtRIqJyzaxpa9roPh/QT5H1RNkuf16grF0Xxj/wweLnVDcvx6BKtCacWBUu7iTHfFrzOOWM7QUKfTQ80nAKaU6A2Iju0UuZxGUc5i6KuDBhvDkcjkG0akF0Q6ECpqlYehVuLKF/MR4JvaLSExxHdVXSTCDAmcRqwtvvMv5HGs+HrNuqLRMOV13Pb9bPF0JW9NmeyUxAGByOrJpj9kvRsNy6w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TUyVxBECE8HyWdtaWnYcdoGwVXVxDuOTkNMJqAZSSBs=; b=r9NOLl2BhKQJqTHAlqLs1+UTJA6LV8dg3UsCKb6AhQgIF0w0V4wPPTORG8y2KC8/Xindo/Y4fvQevIP+ivh/03aszhgnyZpfCES5IwHwjxMxihOnaQwiavWcA1TKAomGYM+bPd27jEBB2oua1zwjGGW1SYPqwdd2eXR9icPptCucNPaWKTObP7OvE/msuyG/fHcBd1BRm7rO2pMkNDJ3XUbyme/O9yF/fcSce3rl16afX77mvOzfyGVFFi/rLOtEzPkLWMDxbwvU/Bc84hzpmPr2SXKvX9+vdGzWY4AbL06C57JMvGP5Rw3s+yBarZ+OfGMACDeBy36leIHfYa+07Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from PAXPR04MB8459.eurprd04.prod.outlook.com (2603:10a6:102:1da::15) by PA1PR04MB10865.eurprd04.prod.outlook.com (2603:10a6:102:48a::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.18; Wed, 12 Feb 2025 07:41:19 +0000 Received: from PAXPR04MB8459.eurprd04.prod.outlook.com ([fe80::165a:30a2:5835:9630]) by PAXPR04MB8459.eurprd04.prod.outlook.com ([fe80::165a:30a2:5835:9630%3]) with mapi id 15.20.8445.008; Wed, 12 Feb 2025 07:41:18 +0000 From: "Peng Fan (OSS)" Subject: [PATCH v2 0/7] firmware: scmi/imx: Add i.MX95 LMM/CPU Protocol Date: Wed, 12 Feb 2025 15:40:22 +0800 Message-Id: <20250212-imx-lmm-cpu-v2-0-3aee005968c1@nxp.com> X-B4-Tracking: v=1; b=H4sIAGZQrGcC/1XMQQrCMBCF4auUWTuSxJaIK+8hXcR0tAMmKYmGS MndjQUXLv8H71shUWRKcOpWiJQ5cfAt1K4DOxt/J+SpNSihBiGVQHYFH86hXV7Yy+NkjFGDJgX tsUS6cdm0y9h65vQM8b3hWX7XnyP/nCxRoCBz1ST0gXo6+7LsbXAw1lo/JrtZjaQAAAA= X-Change-ID: 20250120-imx-lmm-cpu-418daaa257e2 To: Sudeep Holla , Cristian Marussi , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Dan Carpenter , linux-kernel@vger.kernel.org, arm-scmi@vger.kernel.org, linux-arm-kernel@lists.infradead.org, imx@lists.linux.dev, devicetree@vger.kernel.org, Peng Fan X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1739346036; l=2597; i=peng.fan@nxp.com; s=20230812; h=from:subject:message-id; bh=ELwIL41txEYnXVsqlJVAe6Kei0c/P/+vK+xTIEN0sOc=; b=aGDTekAb/IQncOgsZAo8vL215sPJRTTwqk4M6DuUcXG2DjYjdE6YJjov/MCsiaps7HrK61mOG FzVcpSYk6rrAGZQJ/TZstLP/ghs9UeIAFVUlkjPnwEIrAzyDbSKyQu2 X-Developer-Key: i=peng.fan@nxp.com; a=ed25519; pk=I4sJg7atIT1g63H7bb5lDRGR2gJW14RKDD0wFL8TT1g= X-ClientProxiedBy: SI2P153CA0014.APCP153.PROD.OUTLOOK.COM (2603:1096:4:140::6) To PAXPR04MB8459.eurprd04.prod.outlook.com (2603:10a6:102:1da::15) Precedence: bulk X-Mailing-List: imx@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PAXPR04MB8459:EE_|PA1PR04MB10865:EE_ X-MS-Office365-Filtering-Correlation-Id: 4dc5e80b-8f13-4790-3ae7-08dd4b38a34e X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|52116014|366016|1800799024|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?q?TELZs4oMnbN6IyvPeRQ3QvUhe9KiYSP?= =?utf-8?q?OsSHpryGBM3RiYnvOseEma/i0EarvgXYFPXKw346cVFeKHxs5Ja6F8Ybc9bA2/lNm?= =?utf-8?q?HN3mdPA8SrympCw2hBwfj2LN73sPzn77T5JD+5Gn7AMOPXalW9SpI8TMPqlFHIjdf?= =?utf-8?q?S8J7yJTJIcaHJSUzUFqS6Lio4fDGA9FFaZ2tUe8hKIZwNcnpagHHzLXM5N1mbeh2I?= =?utf-8?q?iNfVgaW1WwhqWOMwya3+h0JZekgnbyRiN99xnNNUlyoAnUtMeSxiS+ImR0vx2BQNX?= =?utf-8?q?QHOE04XKOjUkvPcOkF9gXNG2OcS6OA3NvqaGqbZbyBjEPILd4QPdhBRs8yQcAOzd0?= =?utf-8?q?G1BPZ6g3GUFGG0Pmk+Cc36YCirG+6jUNhpjklyZ6aFIlFctPSp4hl/NKa0YDGqzUi?= =?utf-8?q?GDepAif/i/l2eMBHCF9c8jaZMwQQFIMB1SUgSHmMzkVS6BqQkdUHP9cKWdotHSshj?= =?utf-8?q?oB/34azAVzclv60JncTCKlD6UNKNNeYrl4zOgXaizW2VeWimB5gBAfZtLVDovbX7q?= =?utf-8?q?MFubupwLBtueurU4DKKH81/xf6BYr7MXeF6Qbsha4+nu1Rp+CZJsdvUvp3OGqjnvd?= =?utf-8?q?hEbIVUL/7dRHJH290JSGUN8e+NXTFRnhW0kAZG9NxfmxNWMnTZxVHv1PaqJj5uSPP?= =?utf-8?q?Iik7XIb0jGjbPrCtoVC2IuUbiJzTxVmPjek6LHgzAS/srvvbmBSZyF49yItUZ6l+8?= =?utf-8?q?g0y6S1WZjJQt5kU8w4NUnKoPDDCSPlpo7A5YySWsHBhst2MoyQT7M+GdrU5vwCX9L?= =?utf-8?q?0CTcPRQr98byPEvOxLWcCf1xctsNaldUTHNDg9Z0kio5DJxJuKjtqkGjOYk3LJ8uL?= =?utf-8?q?GJww5AH7V5MOfqSIa07r86Ulk+1bFqcnbMObaapTFnR+r+RiMJrOLQoCYXccWK+il?= =?utf-8?q?5PyU+smTKawPxgqTXgTbhmSLjW0vbrPbnV0QTO8ipz96tdvfNESeQ1DjlMY6xntiB?= =?utf-8?q?yfhcKG2bIVFi6zipriu7f8v4W6B7AeW25u+zxvLbDzaSdlOitdW9vouCUDKRu3AR4?= =?utf-8?q?BczFmUmQZUH0UxwulxpP89czrXOZISZxfLWoj97gcdFzuFQirz2rAbNK7+0UNawYL?= =?utf-8?q?EG9pJPCGZRLtNSnL6rLPTKf5+6yjw603rq9CdtMs0ZEVnStWN4iuYy8+DvZz9LuM8?= =?utf-8?q?3QUy/OJDq6SfLomsQ1qMLBzOMoNbtZytbQiuJ/Z43U2GfvCVF/fhMjo9avEtvmRPV?= =?utf-8?q?Hwx70IX91zHLSXeLxDEliIw8q1ZoOxmE8sNBhTF6BFaZGpLAOxFQ4eMWftmQwI/Vt?= =?utf-8?q?9hBcHnJM1bDa6sRv01gIwjDojuN/T73DaxUAEMWuhjHpFlWIYGJgEknaOAjr5QRmH?= =?utf-8?q?WPgYgwORxSgurjMIL0PxgJwCBpO2bAQz31CWKZYDDvVubqJRy+vpaWU0D7eXls8B6?= =?utf-8?q?HwnXWkMgzgI?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR04MB8459.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(52116014)(366016)(1800799024)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?K8MLUPyTkor7KnmuJr/fpQwzzABZ?= =?utf-8?q?z0jkLwZRsFjOMuKkAwyK1xqSf42W75/ucxpHhCzjvNlK99QMokqvS0fN7GT/tDKiZ?= =?utf-8?q?NHobuNa1L7KggFql+fER1KAto7nux6q6eWekQaq7wpgM3LKHTDFuadzCxxTz4TIyz?= =?utf-8?q?qZTRPDgfSqtSviqmLloodS+vRU9NhKqCub5GmAtLx3hEXramsOZ+eTgkwD6rkPPCd?= =?utf-8?q?+cuYAahDnyXbPbpW2qZ8sBeixq8OMH3wvbTB3lJroExhouihuk7/J0v8tYWXHi6Pi?= =?utf-8?q?cjKM7f2TPDtv1UwazVsp7lYlqxQ4HoXpbDFPYuXzmM47WoaytumU9E5XVkR63ObbW?= =?utf-8?q?sADXhWuXimeykiTjQ8utKzeEudtIXPNS7/QlGlDPZsgs92+Di50tIMyt6276WY+n2?= =?utf-8?q?CRaxl9psLn1vfvd/D2qf/ZOuPo5eJW95FeAmQe0wSE5Rcs82N3Ae7e3LoWP1uILbA?= =?utf-8?q?hcvDnegvNbxqGC8z+7ajUYlefEJp5ioqpDd/KDyjT7n+J0KxXkkeBwYdIY6yHLPl/?= =?utf-8?q?uckPamHtdSXeaL7UW+DdeH2PITEE5Jj/8MXJ2C4aLxlhGAWpusfS4dVZNgOY09FEf?= =?utf-8?q?3QbUBQHMVHDYwvg5THEmiON/J0CKvpW38B9jrxBwW0wb/wuzrxWNeDqJsJbpm8qFb?= =?utf-8?q?LVPBJ59uNXwfV7GC9cfhFjvCzsJsMneQ2BJTcRHojBgcZSPHLYEe1pZLKtKbJbI+5?= =?utf-8?q?pwMrSZS10Wz6JUe3DZBmlsNmzUFs3vrEL+v11/k2LHPmFKpOinNvYTqthlUe/5d5g?= =?utf-8?q?9I8aY9tKKQG6g4VgV0/sclZTqJQDZnakzPIbD1vlm7MtODTsIYEMA9NjnGRsjWS8g?= =?utf-8?q?UUeiEfAzYgADre44ONn4rDG777ZS23sGEFs6n9QUXT16w1ST4iwgSk9crL/kafwrg?= =?utf-8?q?YX3mFlqvCH0ENmISg+tzQLCqHOpQ1nlmSPhRlykIEap9iCiS2sU5n1xqDOSwmVzXG?= =?utf-8?q?lfMMsw4AjMeCow4Ooipo1TmBJpZGv60TkXYO5zu/7+GXMZj1cUI8qRDP70vUnMwHz?= =?utf-8?q?8T7aK27DXMfwMcV8WuW/PXPricc7yRUv5waDPHej7x6yQv2ZELHwAQdP2fHZIvDuS?= =?utf-8?q?DApv3FVRSy5LlBUnEBlCgw0EEZv/zu2OHHv5PMQ7POEi3NhaObouNIz1kKEv1RZ+Q?= =?utf-8?q?2wDZHXg+Qtzrwq7is512X+xV6PC2tWZsuhD7ETUFmCyhT1HYSVyFWnFM1hsQK+soX?= =?utf-8?q?mmnlpkphSzRAT6Ry9kX6p32Z6667UKBdDABuj1shI1pPkKFhpGSOZWPNcadixcJyY?= =?utf-8?q?CrEJqkF6Yv1mDWZi/NTTGQkNGy0kYlrw4HsDYy6WBQrjZSU0qfLNNL9lOhIzTQGYc?= =?utf-8?q?IZjoRe8B9O8AW/dSWHn0IWljqA4pw0GnWK63FRFpS3yU4dyDHkaYdu0ncIpdISb6N?= =?utf-8?q?/yUI31r5yjSVPPbf+6FVn+i9oppqYt+4XH6C0kaHA+TQ+ILmCxDwu9HQVzL/3wz3l?= =?utf-8?q?31p8Rm+PFAbE8SO0bvpMHCRWZV+0yQrfN8UbcBUmFgNfcPKGZaQkQfeLLPsROd3YM?= =?utf-8?q?yw/V/c/WL9BR?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4dc5e80b-8f13-4790-3ae7-08dd4b38a34e X-MS-Exchange-CrossTenant-AuthSource: PAXPR04MB8459.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Feb 2025 07:41:18.8791 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: p1jaXyzRJ/NlG/b1vFdRgNokWkwS/57vwDut9aNCIzwAqS6q9CFMBjsW6OIuckVceXQnWOpQ8J2pe2z6i5WzXA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA1PR04MB10865 i.MX95 System Manager(SM) implements Logical Machine Management(LMM) and CPU protocol to manage Logical Machine(LM) and CPUs(eg, M7). To manage M7 in a separate LM or in same LM as Linux itself. LMM APIs and CPU APIs are needed. When M7 is in LM 'lm-m7', and this LM is managable by 'linux-lm', linux could use LMM_BOOT, LMM_SHUTDOWN and etc to manage 'lm-m7'. If in same LM, use CPU_START, CPU_STOP, CPU_RESET_VECTOR_SET and etc to manage M7. Both LMM/CPU APIs will be used by remoteproc driver. The remoteproc patchset will be posted out after this patchset gets reviewed or in good shape per Maitainer's view. Build pass with COMPILE_TEST Tested with remoteproc on i.MX95 Signed-off-by: Peng Fan --- Changes in v2: - Add dt-bindings patch 2 - Add a maintainer entry with patch 7 - Update doc to address various questions and make it clear - Use strscpy to use scmi server returned string - Drop extra blank line - Shrink scmi_imx_cpu_attributes_get function args. - Typo fixes - Add LMM_RESET_VECTOR_SET - Link to v1: https://lore.kernel.org/r/20250121-imx-lmm-cpu-v1-0-0eab7e073e4e@nxp.com --- Peng Fan (7): firmware: arm_scmi: imx: Add LMM and CPU documentation dt-bindings: firmware: Add i.MX95 SCMI LMM and CPU protocol firmware: arm_scmi: imx: Add i.MX95 LMM protocol firmware: arm_scmi: imx: Add i.MX95 CPU Protocol firmware: imx: Add i.MX95 SCMI LMM driver firmware: imx: Add i.MX95 SCMI CPU driver MAINTAINERS: add entry for i.MX SCMI extensions .../bindings/firmware/nxp,imx95-scmi.yaml | 16 + MAINTAINERS | 9 + drivers/firmware/arm_scmi/vendors/imx/Kconfig | 22 + drivers/firmware/arm_scmi/vendors/imx/Makefile | 2 + drivers/firmware/arm_scmi/vendors/imx/imx-sm-cpu.c | 287 ++++++++ drivers/firmware/arm_scmi/vendors/imx/imx-sm-lmm.c | 270 ++++++++ drivers/firmware/arm_scmi/vendors/imx/imx95.rst | 737 +++++++++++++++++++++ drivers/firmware/imx/Kconfig | 22 + drivers/firmware/imx/Makefile | 2 + drivers/firmware/imx/sm-cpu.c | 91 +++ drivers/firmware/imx/sm-lmm.c | 98 +++ include/linux/firmware/imx/sm.h | 62 ++ include/linux/scmi_imx_protocol.h | 41 ++ 13 files changed, 1659 insertions(+) --- base-commit: c4661e026ccea82ebec71e4b9013c9a4f9f4e232 change-id: 20250120-imx-lmm-cpu-418daaa257e2 Best regards,