From patchwork Wed Apr 9 11:37:42 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pankaj Gupta X-Patchwork-Id: 14044113 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 96A53C36002 for ; Wed, 9 Apr 2025 06:30:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:MIME-Version:Cc:To: In-Reply-To:References:Message-Id:Content-Transfer-Encoding:Content-Type: Subject:Date:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=8+o55FPMa7m6VVea9dp3slj5OALcBnoJzyUth39j3Gk=; b=Em1tHN3twOwr/urXE+SxxhDHm9 0dOn50AsIaoQXU9KhaLKiFKdZt/5tY8waSz1ITW2i1q3NmPmpDJbDsqaCEaIpbSgzgrOB2npvctwX Uxou64AL7lYQoeKNoQKBOtQDP0BpjZIbbAJDrM++Y8GCfTrLsQg1g2Wfa4A8aGFmJdXTKJOQR+L6s QocRhsW1PDJEwf4pRRSnOOaCQr3+fTfeALDrSN2CHlqA1aL+CkaM4UafgGEih7AiqMYvBtlmFeV6y nqRZ/Hl1B6eu+QesdioJek1oCCupjpjrGNienU+95VMgVQ8J5JyswscLhqZHcplWrA2cuqBnWlpRu Be+hmm5A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1u2OxK-00000006Hgf-39fS; Wed, 09 Apr 2025 06:30:38 +0000 Received: from mail-dbaeur03on20609.outbound.protection.outlook.com ([2a01:111:f403:260d::609] helo=EUR03-DBA-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1u2OvY-00000006HQE-2baI for linux-arm-kernel@lists.infradead.org; Wed, 09 Apr 2025 06:28:49 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=JNGnAWUdOTo5aWsIkHHb2stWnua4IIO+QmyimOIE6wrjkrNFrVjQzNIwHXQGH8wTvBfpCNElEz6CIln3d3p0KtZNNIZbQN85ZX4E+2tS7pFdg8qnXnjL2luzOoVQIxfGNHX/VpoIfc11jYKd4xQog3IfYFylN9GlmkMyNd4iAjJGdTROiI32bDMLyaHvrtPGG7DibAEfHwJpt9GxvWCtOOmAR09X588do1BT5O5NvcUB5REOdwCmeFu/izY5lqH357+Id+xl30UlkCuiZT93VXThpKBgTRSNULGsqLInhyF6JdSwY3mebDsOVmXe7NdSNvJCbFa//Ms4baT683sdxA== 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=8+o55FPMa7m6VVea9dp3slj5OALcBnoJzyUth39j3Gk=; b=G9c+tkgB1Zt43r4C3+vRyACKMz2jWkN+VcJWq1HCSPfREDSpP9zIWVXd6CMZDLHuWjGP+754A8V5ky/lbDLNlGqVgFiLaKup3LPuhCE2AlKiphWavDXICnG17egtlngGNBvtDi7FwncWtWytDoa7Tvxwv/H+PWIxRwVzx4T8krLiXM5UWIP5BlYPYitZOa+tIwwd4GZbOY2vdApYmK9/H27MVntcoF0LMjpg4DEzzb4+MrQO9GgPYTIYhLaWehObri6jUS4tyN3san2PweC3YFfBqm0y/2VEfloYuOiXKCQ526z2pXJpnSobGOkVInPgC8kAfIjTbg5GWD/ZlPS+uQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8+o55FPMa7m6VVea9dp3slj5OALcBnoJzyUth39j3Gk=; b=GAqQZxxEtba1hhXKZsOuvIOagvUu7JOFjq008q3BQWAH3RHTU4tFdPzhjaDKWc7izYGSPGH3acZNg6b4i6ugduAFYcHdDAFQ63FtsHKl5ErSk0eqaNuoGGbiwLy3TCFYlGwUxzpfYZP7onwtWwetMmkrZXdLEUHeLVmWDoysTfxpVAsJ9m1rr6qRgak5BB792dCLe+wrnTLah9R8ej4yj14qWLNCsH7Q/2By6nWYZEoD16Zr64FyPNVaQ/vldXJAVX4PZx7wPmwvWXMg9HSM1jGmYWC1r8S44sebQcNwta/ijyGMcwFJUIDHAwJQUivT855WEcGnLFvZS/Ce6uNI7g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AM9PR04MB8604.eurprd04.prod.outlook.com (2603:10a6:20b:43b::21) by AM0PR04MB6882.eurprd04.prod.outlook.com (2603:10a6:208:184::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8606.29; Wed, 9 Apr 2025 06:14:32 +0000 Received: from AM9PR04MB8604.eurprd04.prod.outlook.com ([fe80::e751:223e:aa3d:5827]) by AM9PR04MB8604.eurprd04.prod.outlook.com ([fe80::e751:223e:aa3d:5827%6]) with mapi id 15.20.8606.033; Wed, 9 Apr 2025 06:14:32 +0000 From: Pankaj Gupta Date: Wed, 09 Apr 2025 17:07:42 +0530 Subject: [PATCH v16 1/7] Documentation/firmware: add imx/se to other_interfaces Message-Id: <20250409-imx-se-if-v16-1-5394e5f3417e@nxp.com> References: <20250409-imx-se-if-v16-0-5394e5f3417e@nxp.com> In-Reply-To: <20250409-imx-se-if-v16-0-5394e5f3417e@nxp.com> To: Jonathan Corbet , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Pankaj Gupta Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org X-Mailer: b4 0.13.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1744198674; l=6679; i=pankaj.gupta@nxp.com; s=20240523; h=from:subject:message-id; bh=8QvSWd4rmn+G1ZEKi8f+TGc8yN5T+yIQA/mdWdtzwO0=; b=ocnMsAuWfZSGl0NoV6kSSjtQOK8RYwSojwof51Phg9rsdBOKuvHoKiAmrLu3culDA+PxqD8sb xffg53UkkYICfIXxwaqs7ITo/YvyW0EMYCmKWC1LCqMlpEC2Yw8GNL2 X-Developer-Key: i=pankaj.gupta@nxp.com; a=ed25519; pk=OA0pBQoupy5lV0XfKzD8B0OOBVB6tpAoIf+0x1bYGRg= X-ClientProxiedBy: SI2PR01CA0052.apcprd01.prod.exchangelabs.com (2603:1096:4:193::11) To AM9PR04MB8604.eurprd04.prod.outlook.com (2603:10a6:20b:43b::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM9PR04MB8604:EE_|AM0PR04MB6882:EE_ X-MS-Office365-Filtering-Correlation-Id: fb47841c-f23c-4c1e-5e78-08dd772dcb49 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|52116014|7416014|376014|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?q?WOueVNP9XjOYPsDxZnI9pbFG5hkbM0E?= =?utf-8?q?0DD6djqgE0kycN0Gyq7A48HbzB9BWJKCmpWVNyQMM90mQNVnE0RFT25dXcGIjNAoh?= =?utf-8?q?8TBxdtTAwdxTd5uue4b7SeixDfq7D74ERFg0RsY+UsUegKNZ0rz5xkbPQaBzlIUDt?= =?utf-8?q?ODgdUrQEZk74oL7Tmx9sVlWZ61ytdggIqIyw4YZsWEJVi3E6cZ87FyLwo9TsVhgNH?= =?utf-8?q?x+OZFyBqLKJHNAUP7PF90PTHpko505UOJqhtmLdIJ712X0D3uz9vgS/MzZltKCKED?= =?utf-8?q?A/AiXv77NWiws1esQdyIH4T3UccujOvH7LCoViqgXDR8scHKk9Le34QogGFt1+tba?= =?utf-8?q?R6xUZFITtQPNjJjtBAYRqhycnWkPUyvzCMsgVFCdomjitMQdKFKjfK9qSSO2ed9Oo?= =?utf-8?q?sqaMn/OWNMiuC8dWrOqErPiwYhM5ZymVrWb3cbU5Ab6oWqtZdceC9U5uVtmVynDk3?= =?utf-8?q?DVhZ4Zki156/vuvVfg/NdnOahO7fFm5NdwF99jKMlXdIMDLbwZCOaAB+4ZziirPs3?= =?utf-8?q?ahT1ElZ0pfSRp0gEj4+GceUVN5EFmDNxA0X1r/d0jqtKDlSBk3hKRQPTTKGWFmYoj?= =?utf-8?q?WiIytNszoGSLcoIENQIwgBNL/h+nO8Hs48df7dANagmREaDuiux/dSCnGf+InwS4G?= =?utf-8?q?YaSocNS3prwWrYmSVzMcKYu6uQl9TUWB9huVwTfgusW193tbr/VBmYtzPnIiibu2W?= =?utf-8?q?YqI8NStnFjkyEokbVnGNrKKJrZT5JavufEAO22vFr2vyNt9CDkwBqpWw9e1m1pvkN?= =?utf-8?q?YJ8lxxUzrZ1wmiSjEdwL8kse/k6w+EX4EhMAu1xnJsMxbvKa0ObnqKQFRqHIm2J2R?= =?utf-8?q?IqtDt3H0+1zb6I08mgzZT7/04CweM+PWOOdg1nyhHcd3/v10e0z57japOU58qYjGZ?= =?utf-8?q?DhCzT60FNhkl5fTydhvMZZ/Pd/h+G2KOI5SPYPLuY8p3yQEB2uyKI8e9E5aqSqjN6?= =?utf-8?q?wSihfV3OesQVw9RSN5a/JSOmgzrIoBNge02qhSeFAq1qC+Bq0rAUgSrZBeW+oJFIP?= =?utf-8?q?Mw3TpOhmPKIydQd5GhjGWOQ+rZk/I9zpXC0gOobnkDC0zpMoiaDZjDLpTgNbQwHoy?= =?utf-8?q?BXt5Lahlm9xkQS9y3vzO5IHoJefRnFZubmdc4lBbut6zIKctCsLDnRAoCYwQIPT5h?= =?utf-8?q?IxRPZzkk04BD+NYwfBhcMBV6oizNjr8GqSn8iHjX4jv8sxO/xAyl7nWIQYRE54U44?= =?utf-8?q?S9isCzQDtPkqN48YN5KvfwXvTQIEvNqxrv6x67rfNNaz+wPvKslpnAD1UVh1KtATh?= =?utf-8?q?CmtTWF/6xnqPgPuJMjqqkOduNHIvjiY/TB934YUcxqqd9uB1U2WexKAEmMHBGzvbd?= =?utf-8?q?5GKYY2HpFGLgZ/nCBH0CPQcNDdK1MguXG+bPFACp/gpehyYC544Lis+xtMwSj+xE5?= =?utf-8?q?/GEw5wLubHXZe8LK3qN7jyUSODUHq/Bbw=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM9PR04MB8604.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(52116014)(7416014)(376014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?xb16fko9aShvi7YVkP7Ntsgjb2rr?= =?utf-8?q?07PIEALvmAwvInO+6UjhPpcQquqKGiYEdWre0Hfw5YcK+R/RvSEvhOPKFt7H+8iRT?= =?utf-8?q?abMbSj40JBZEAfLpTVzDw3lwNMZII3aLf8PdcM16T59gD/dSlYzEyOPnAeE3EGr8X?= =?utf-8?q?s4SV77zlQ/6V3Wz5YzYxCtH/ikvBSMg9L3WDuHeG5O5aUc/gkW+Uk6xSJ5eeQevcv?= =?utf-8?q?nDIPxzHP+7Wz738nw9/e59mEqv6YWUi/kswnlBXCrtd9nUGEjIIhFQ4385eM86Isf?= =?utf-8?q?rzva7/omJNffP8HtXZs/JROScfw7/5d8qZ0qUpJQOOzduP/FDaiZ1Z1wWMslpk9zH?= =?utf-8?q?/gnFdr8VoA7jP8AuBOD7dBDEoK/Bv4iX9OSVxPnRtcdz+wBBcNyCMrbH7da/Ot/7L?= =?utf-8?q?t0YgyAZEhX1dCCLfchRhX9VB7hu5/zb/wq5ZKWPE//crC3Z5ksU5Itdud4o6BH4CJ?= =?utf-8?q?qQDosKJKUyHM90vsFBhlGzAHJjmuOJ8rvybpb1pKsDscQboSvRm+9qlS4fUwywY6f?= =?utf-8?q?i4v6KAhmT5patLDyDydAWM2oEsPE5g8nNjcRFTXaQ10QXy296ZUnFJymSfckc8q0L?= =?utf-8?q?d0B1ZEnCAbYmo9phVfCS5PrB6rlrBJGfC1/WMsIuZjxmZsNCZz8XAkTOirDZ2+bMz?= =?utf-8?q?tYw59xHGPugP/3LtLiLv0Zd/nDraS12NXVZRxZa/j8YmVJ81TZU4MrBPHsGLxUBts?= =?utf-8?q?BjIzyTLs2CczAOGlYZ7Ay9ZbqdvlTN1NOZyvd7PaRa8HyH8smxdiJS94KWt+g2UV8?= =?utf-8?q?/vzkmnd2ji0cQG9zeBu8QzPLGPW5NItMuWeanOpatCilOb0qv7fMQIJPfwVtftAU4?= =?utf-8?q?cfkLRYrKmMskQ59C/MWxAfsHdPBXCkoaEubZt1qb44rUqRww434WuFWLWUL95EdC1?= =?utf-8?q?BNJS2VGB4B0+VcxOQNHNYBkoEoamXgFO0iVxkHW8v4Vvquh6rQoTYymsQeOsTn7eR?= =?utf-8?q?3ZCWfqJ93zKDwygCoe4RTD4MBSRkXaVNKBWx7mk2nnhC+JNMmxM0R3L+Q7zu4XYDV?= =?utf-8?q?q/sbkb8oCQK+LmLU03JiN336fkgZ+cRQOyhe+SXNqnPwdZMVD3DSdVOBuQzBQahY0?= =?utf-8?q?In9w2Jm0wLmtKxQMUl/r2IoO8nqBBawu831B5nnfwARQpDGfMK8bu6oUOhIieybR+?= =?utf-8?q?UERw6e64OjmuOqPzgGrFp4D5kW4NO56ypGaZI6/3R5xD0lwgKfBOd1t/Yk7WzlUGt?= =?utf-8?q?P+qYA9oSQmvPUoewI766WaL60hxY4GU/qpfvyYMIwDqJkqyhxk+mRsu05O7vayr4U?= =?utf-8?q?acNmOS9/D42wLCpeMS9p7spIVKsWGq/HxcxSsjW/pwl29v7/H2jzEgvIt6x+dTp4P?= =?utf-8?q?p2ZSNQ9D8XaE+3Crr48xbSIGcZOc1eERUT8wI6INTz+jMIiNqXFk+ymfiJk8ywhdA?= =?utf-8?q?NuCEaVaWikHahuheEA/c/+wKl9E6tNNKN2ihZSyGvGO9Ef6iuMrVKfPlrF8/TJCKI?= =?utf-8?q?yfpHPbCRo4TzoAulZciLSTnNnVZh949jGXE2WUZjVrv/WjZJCbxpv0Hm5PDJ2Cjmy?= =?utf-8?q?N6pbHpZHAHTo?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: fb47841c-f23c-4c1e-5e78-08dd772dcb49 X-MS-Exchange-CrossTenant-AuthSource: AM9PR04MB8604.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Apr 2025 06:14:32.5969 (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: CtxshCAbCxsG42V/F0+UHBbqugryVlVNczjfdVi4VywFcUbC/Sf+640ZEV7rP9J7Ck62Ti+Eaqraj4Q9+aGl7w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6882 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250408_232848_797912_08000427 X-CRM114-Status: GOOD ( 13.85 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Documents i.MX SoC's Service layer and C_DEV driver for selected SoC(s) that contains the NXP hardware IP(s) for Secure Enclaves(se) like: - NXP EdgeLock Enclave on i.MX93 & i.MX8ULP Signed-off-by: Pankaj Gupta --- .../driver-api/firmware/other_interfaces.rst | 121 +++++++++++++++++++++ 1 file changed, 121 insertions(+) diff --git a/Documentation/driver-api/firmware/other_interfaces.rst b/Documentation/driver-api/firmware/other_interfaces.rst index 06ac89adaafb..a3a95b54a174 100644 --- a/Documentation/driver-api/firmware/other_interfaces.rst +++ b/Documentation/driver-api/firmware/other_interfaces.rst @@ -49,3 +49,124 @@ of the requests on to a secure monitor (EL3). .. kernel-doc:: drivers/firmware/stratix10-svc.c :export: + +NXP Secure Enclave Firmware Interface +===================================== + +Introduction +------------ +The NXP's i.MX HW IP like EdgeLock Enclave, V2X etc., creates an embedded secure +enclave within the SoC boundary to enable features like + - Hardware Security Module (HSM) + - Security Hardware Extension (SHE) + - Vehicular to Anything (V2X) + +Each of the above feature is enabled through dedicated NXP H/W IP on the SoC. +On a single SoC, multiple hardware IP (or can say more than one secure enclave) +can exist. + +NXP SoCs enabled with the such secure enclaves(SEs) IPs are: +i.MX93, i.MX8ULP + +To communicate with one or more co-existing SE(s) on SoC, there is/are dedicated +messaging units(MU) per SE. Each co-existing SE can have one or multiple exclusive +MUs, dedicated to itself. None of the MU is shared between two SEs. +Communication of the MU is realized using the Linux mailbox driver. + +NXP Secure Enclave(SE) Interface +-------------------------------- +Although MU(s) is/are not shared between SE(s). But for SoC like i.MX95 which has +multiple SE(s) like HSM, V2X-HSM, V2X-SHE; all the SE(s) and their interfaces 'se-if' +that is/are dedicated to a particular SE will be enumerated and provisioned using the +single compatible node("fsl,imx95-se"). + +Each 'se-if' comprise of twp layers: +- (C_DEV Layer) User-Space software-access interface. +- (Service Layer) OS-level software-access interface. + + +--------------------------------------------+ + | Character Device(C_DEV) | + | | + | +---------+ +---------+ +---------+ | + | | misc #1 | | misc #2 | ... | misc #n | | + | | dev | | dev | | dev | | + | +---------+ +---------+ +---------+ | + | +-------------------------+ | + | | Misc. Dev Synchr. Logic | | + | +-------------------------+ | + | | + +--------------------------------------------+ + + +--------------------------------------------+ + | Service Layer | + | | + | +-----------------------------+ | + | | Message Serialization Logic | | + | +-----------------------------+ | + | +---------------+ | + | | imx-mailbox | | + | | mailbox.c | | + | +---------------+ | + | | + +--------------------------------------------+ + +- service layer: + This layer is responsible for ensuring the communication protocol that is defined + for communication with firmware. + + FW Communication protocol ensures two things: + - Serializing the messages to be sent over an MU. + + - FW can handle one command message at a time. + +- c_dev: + This layer offers character device contexts, created as '/dev/_mux_chx'. + Using these multiple device contexts that are getting multiplexed over a single MU, + userspace application(s) can call fops like write/read to send the command message, + and read back the command response message to/from Firmware. + fops like read & write use the above defined service layer API(s) to communicate with + Firmware. + + Misc-device(/dev/_mux_chn) synchronization protocol: + + Non-Secure + Secure + | + | + +---------+ +-------------+ | + | se_fw.c +<---->+imx-mailbox.c| | + | | | mailbox.c +<-->+------+ +------+ + +---+-----+ +-------------+ | MU X +<-->+ ELE | + | +------+ +------+ + +----------------+ | + | | | + v v | + logical logical | + receiver waiter | + + + | + | | | + | | | + | +----+------+ | + | | | | + | | | | + device_ctx device_ctx device_ctx | + | + User 0 User 1 User Y | + +------+ +------+ +------+ | + |misc.c| |misc.c| |misc.c| | + kernel space +------+ +------+ +------+ | + | + +------------------------------------------------------ | + | | | | + userspace /dev/ele_muXch0 | | | + /dev/ele_muXch1 | | + /dev/ele_muXchY | + | + +When a user sends a command to the firmware, it registers its device_ctx +as waiter of a response from firmware. + +Enclave's Firmware owns the storage management, over Linux filesystem. +For this c_dev provisions a dedicated slave device called "receiver". + +.. kernel-doc:: drivers/firmware/imx/se_fw.c + :export: