From patchwork Mon Jan 20 16:52:19 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pankaj Gupta X-Patchwork-Id: 13945020 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 47562C02181 for ; Mon, 20 Jan 2025 11:31:18 +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=rydjPSyjFpE1b+KVUJhSPw9jPLhoKfIzwxtGoWGJhg4=; b=J+ckHdRhkhPWhnJ6xbMkVA6xsl 4t+13ameH+lfvgU0PtAtFpcharqGMW5L29pUGtfBqMEdkTejov5v9rG7d79awiINuCKz+kSEc8v2T 1WRZknV2dZYNpCtjFpbCd/av2HpHTMOD21E7OEP/tZh8Z2BJfQF0ZOUs0qm/p4C7Di2xCxT4AaTxB q4nVqiUkJ/PlaJ7FcHmB2Z0N6+ozQpz9tyiWqEUUfeKjPc7jjZd1hooL8JZtcWACgnT+Pmule9QVg /hqMBHS6o3pyFUbda9ZPopvFZMAMubB1O2m/u3iF3OXwpOa8zO+7HHhoN+L8vONzTta70iRAo+HYW F80eZJaA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tZpzi-00000005RU6-2She; Mon, 20 Jan 2025 11:31:02 +0000 Received: from mail-northeuropeazlp170110001.outbound.protection.outlook.com ([2a01:111:f403:c200::1] helo=DB3PR0202CU003.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tZpxC-00000005Qsn-3iXO for linux-arm-kernel@lists.infradead.org; Mon, 20 Jan 2025 11:28:28 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=EJH8TjO7IWQ6j5AwFTCluD5bdraFgDb5rST95TK02wZEgUi3sU2HlQ7AfE3TBmDiOcujJiP1qBADZ8AtqhHKR7fKsJ5X9NUNQlS8RuGKf/FAWn2+8dIt7BmNlqrflnn8gZTrJqd4ZdUsZupT9rZnhhB63L5Ay3VMjORqutz/J5NO8Ssj+0vuSvFwgeGEfU13iDyuTwl75e2bXpMVBUsYaACZc6PIMijNG68cN6bHP9zJoLocGqJJhLaYV1yFap2SRY9slM3rCU2bEqEpvykgsPD+UE4JfYU1ZsFupfmgTqs6Vri74GkG6SJj99Ay1XLKX2KA3NVkX/hw3vFLXGsdBQ== 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=rydjPSyjFpE1b+KVUJhSPw9jPLhoKfIzwxtGoWGJhg4=; b=e//1lb5rkhV1RdLnyyGBZSRgxWEZUe/QYfuYCTJBe7egw1KxRexR1mGWPvWAdXfSpn0KzLzd2z6Uar7ezDeHsx2jFQZsOn2wOdTcKMEVlGVFq9iudCENkksPD2OtQAETXI60aI4xjuxGo9iAeno0JPOs3G2iE9IUY0pZuR0b0Vqayd+W6VcHoJHMqvxbkvM18vItXa+cYXF5fK5E58DGodIUB5wmWb0w8bJCX/zvggFZShctGQlmdzbOA55QENhw/CQHu3s48ol5GzpW2oYXKXGvQ3MPCxLR1B0CJ/U0UIUUqgiDhj/lfu6wB2CDyZBnVx679xuTxz2eKQbJvfABcg== 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=rydjPSyjFpE1b+KVUJhSPw9jPLhoKfIzwxtGoWGJhg4=; b=IfcN8LkAgYaZTjEaoPa4UVvPeNz2dd9tPMUQh51pPR/2Ydknc4HlJZ3sRYMbVCTT0+1yUqMNd2L4SDY8LrDSjOxoKArkqfN/IwNoF42cHY6cf3PfDsa27fWFbHbs7dQn/6Cc4ZsQzc9PSS4GSU/3LihzYT4RGbTeC+eFNDEnFF6AmCpMewFBYItOtO+XArxDp1+fKbzyB8WSHMZDXCe5kpkL55DEJhmIlOkrHHY+ytDj7baWBE0n0lCDfJmdMgLYNmFls6Nq9X55KHGqm4NLmDHpN6m0f9wIyEaTLuzIIs69mzjxwQibWdmJxGir3MNd/74xMXeWFn9E47st/BNSSQ== 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 AS4PR04MB9551.eurprd04.prod.outlook.com (2603:10a6:20b:4fa::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8356.18; Mon, 20 Jan 2025 11:28:24 +0000 Received: from AM9PR04MB8604.eurprd04.prod.outlook.com ([fe80::e751:223e:aa3d:5827]) by AM9PR04MB8604.eurprd04.prod.outlook.com ([fe80::e751:223e:aa3d:5827%5]) with mapi id 15.20.8356.020; Mon, 20 Jan 2025 11:28:22 +0000 From: Pankaj Gupta Date: Mon, 20 Jan 2025 22:22:19 +0530 Subject: [PATCH v12 1/5] Documentation/firmware: add imx/se to other_interfaces Message-Id: <20250120-imx-se-if-v12-1-c5ec9754570c@nxp.com> References: <20250120-imx-se-if-v12-0-c5ec9754570c@nxp.com> In-Reply-To: <20250120-imx-se-if-v12-0-c5ec9754570c@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=1737391948; l=6679; i=pankaj.gupta@nxp.com; s=20240523; h=from:subject:message-id; bh=FwHu8HOgjdeesS4jBLvkey7Y+WnnBYkcgUp1hGR75ZU=; b=FkDT1G0Atyo7olhjuBC+wodw4DNxmd/iD4OuRdhPUwo/WMdyniGH2PLq55ZHrdv83/EoZIZMk 29yp4ShIuOzDcPYAHolOswhIpu7liDcxMhnUr35V3kXzzXAlZGcnurd X-Developer-Key: i=pankaj.gupta@nxp.com; a=ed25519; pk=OA0pBQoupy5lV0XfKzD8B0OOBVB6tpAoIf+0x1bYGRg= X-ClientProxiedBy: SI2PR01CA0051.apcprd01.prod.exchangelabs.com (2603:1096:4:193::6) To AM9PR04MB8604.eurprd04.prod.outlook.com (2603:10a6:20b:43b::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM9PR04MB8604:EE_|AS4PR04MB9551:EE_ X-MS-Office365-Filtering-Correlation-Id: f28d382f-0526-4994-d425-08dd39458c55 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|7416014|376014|52116014|366016|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?q?XZo1i6ZELjLvhXaoRrIMbDSxVo8UpIW?= =?utf-8?q?vIQs7kbjquQrymgZLnm9a9/7zSZl9mE1Ck5yw7xUcK8dSU2TRaMivMjFX0a0+snLp?= =?utf-8?q?a+nGxzcsUhXLStWFHMVG1MJdCSTlvsmUEpIPiDcfdT8FOS6p+rG1GhA1hoeiiXRNx?= =?utf-8?q?EUvsdjvRERw2f/PAAZggNsdghq3Bz5xupilxQEca9pQStvUB0/2BvmESIArGmn1Yx?= =?utf-8?q?NgGyxGw6JH8ulHBLmbGV/oZb3zw4Dk/KLZyQnrU3TPrpWIJAyrXgm+x0+BozNvj1a?= =?utf-8?q?bF1Q3enqcv0LcuKRGEuikbrKPTIupuFSCSx/He26ALfv30P0I30f/abTrWFv1j+2T?= =?utf-8?q?Q6CWv+mp5bajyW2XKGuzOxCRpoeruyXA2iy4/oqiCrBpQhKKryTer46gP8pErG03U?= =?utf-8?q?+nBuVrojbGwPZwA3P55gOaKvlKNGCUwCs4JZcRkg/1TnOU8q7r24UhAdaxMtT5SxM?= =?utf-8?q?HpYZvEAxxjsdpaE5vqTe2vCJoxA9l0ex8aqW2U5llYlcwyMKqbNwm0N8PhZWp13He?= =?utf-8?q?7v9LsyWvT8rjo+8WScWysPsghiS2NZ0zwzXogbYJZ2RfOcIujfBiEFPDCgaUC3Qgf?= =?utf-8?q?t4EDCfsOQmg8yBtNYR2PMaMnKDbaJ4he69KvMP0EFPbW6JAToBSOel3xItYmqMfcz?= =?utf-8?q?VSnTrmeBAGUbswZPSchpbCshbD5lXORe1k7sFBjU+nrDYz6uSTkE/suRckn5rehqd?= =?utf-8?q?t6DPY9CZwH03sIolNMMlHJeTbg7TlXk4YYzJPjaMReKDw90QBgUFPQoOtSAnAqj1G?= =?utf-8?q?tsO58G0LGOtcH6pacKH3I5meSqsIlNBjfyMey44OJnc/5O0DJLpBCuu+6OvDNtFd8?= =?utf-8?q?9jTfewGpCy3Gak40Y1XzjlV9r1lJfKzl+hayOC+bnjvmktGeDmGoRSwCRwxSmhgX5?= =?utf-8?q?BrXVD5j7DjElDEYOXdrP9udkDnmkZyoH9fv1zFXoMyqaFgmseuWnaUaHlqpGrRu4D?= =?utf-8?q?x2mQA2UxjBLmlGR3D2pSIzdU9YqqZ6Btu7JfcYzYSBaTiu1iHLQ6lY3PCZl2QPrx8?= =?utf-8?q?4HXPS4SedHuaGqMkLOGMaSDCzLWFpSuEEYs6QPUkOX6Z9ZGSBQQ6aoL8IA7kzUFbd?= =?utf-8?q?du11NaiONOOeOXq3hoFeYwsf5apuM+A/K4mbsf/SEg2V/c73c1LSGj2d4c08U9PCu?= =?utf-8?q?9jHzAz+WOMeTuH6HikH9BHp90jD6PkfNHsV8gwDjChE4Wu6oB1Mfbkk7aewev1KJV?= =?utf-8?q?2rxkVfeEVancOlnZiqnDoTM/7NjpU+M3QFNDts3f5DJ4jPqNNyMh4WZ+nOI4s9I1w?= =?utf-8?q?SkmmbDRAaLnp8/uYKtl3uLOslmW5L00e9oPs82HGV0pFQDseVpFL2Zzm/0OZNQ7o9?= =?utf-8?q?DHHYJ4Uz+XQq6evoebKByQe1rZ1HFJm3TspFeIPfzyoa5cxVg9yZjom0ZIpEhTOW9?= =?utf-8?q?j4XyylrK1tP?= 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)(1800799024)(7416014)(376014)(52116014)(366016)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?8Do2cTS6Rz1Lz0GaqWIUqp2lrmbd?= =?utf-8?q?Mhs9XcxBtXpuUELeXMuzz+O48YKrvpTbdbOqzl3vpOSSk3KzyTJ3YHDUbte9ez6ib?= =?utf-8?q?ER5AezKQLSdwariIvRj/0jywzm/Q4rbVbw0x5wklSIL+ywZGZlVJ8K6GbsnJ4isjO?= =?utf-8?q?ACu3GoBosTtJvOLR9eEDVgh4rDKK1DG7092Zw+WrXsEspyaPHt1tUGFOx5eMku+NV?= =?utf-8?q?4MhAB5OItLFhiZhCNWxm+fkKhsEU8utDqYz6/qRj5/GROk7fzKC9ZGwf4Q6FCMcag?= =?utf-8?q?JKHHjSjgVIc+hYbc6pUG8QU4CT/8HuPTjv9IvmYu6GSS7dZgC9Xv1vm2sIFU2qkQd?= =?utf-8?q?kW2Tsc/xdOyu7ahoQXj1kRSagB0oNbAkJruxasW4r6xzqDzLHRtUY5scWzmng/pNz?= =?utf-8?q?HI+GLJ1gQG6fTgiRsEzI9Y5pGbwtoDXkV6fHcetzoK7ImYPCaQtcPWDafTrHSRiBj?= =?utf-8?q?S2VK4W9XZ3001s2ismIiFDBDrGn7qgG47vxOuJC9R7ijPnNbw26T1P66kdXuxXQQ5?= =?utf-8?q?CviqRg6tWLIflcSkJepImJojC0OUx8XqOS8OdJWMlFwxpAJ/lp1washWOUCve4kCC?= =?utf-8?q?bTbw/ci447N8IQOeS7OS/L0+hFYMn82tsOhE/EWL8kY++aO5PFVclDaAr1lhOFpiL?= =?utf-8?q?jjTN89lxA9bczGBhsGJbosN28SxW3QNxOBAl+m0XOHBTWtcbRtGJRB2SlsNfBF0zR?= =?utf-8?q?gsu1So8kbYRuFRTIevKRCAY5w1BROCJUDSMphfBa60sHLjPQbY9zLqbTiGDUmqEcS?= =?utf-8?q?7PBo8IwUDc8KnhyXto78fhEA3seSmpmKIXFVDHysTF8Ay8rIf+6TO9Rw5oiMAEjuq?= =?utf-8?q?xGpmiMXEMyKullUHuyhoXj42IfS92qxitKNm9pXBo7yyte+W6djCP1ZnMWezGUyL5?= =?utf-8?q?4Y/6bEmFobj2kcl8b7zfqsPZU6ABssBiuehd6IfEcJKnWjqYYk77hlAsB3Lte6Ghm?= =?utf-8?q?R2bFyfbI4NnmmtSpKAOccatKje4LfmVD6gLESXrzWWftuSSXZFyPvrTbpPJulX2El?= =?utf-8?q?ijdIprDnokbCPOVwm4vursP2xJ9IibRLtRP4LBznlguQVUXtQJMnMG9dPiiMof3rs?= =?utf-8?q?ZiLh7mozZaY+5qzMlcJVYeJ+tSCYjGnJHHU/3/MXdXqFnPhaN/+CJfvLlSfaYR0E4?= =?utf-8?q?DdhphXtLOKQxLLJPbFOSPoOSx6wktLrzdqI2tKCWFV6VbFLyj4VsP9D6RtIB6qjsw?= =?utf-8?q?KiRIpPm2aQynDxR4DYeqXQGM244h1x5EfgIhovMCJQz7W0hPi+TL//qNsB9CbbKzf?= =?utf-8?q?NetkzRSpZ6IoeyAWWzfJVFmIG21F1b/1VtloJpizFHP6f93axsGntaJ32X7cStHBZ?= =?utf-8?q?mAYL+9bcJle2dpXj095OTBxfvYZblpx7QuJGTYAhtaa2l+fZ5vSO/q3IeYOcqFw7B?= =?utf-8?q?aFmU3C4E5JhMi80uUHqDkO3ZoIkCNASWeH4F4IQw8ViW0yfx6KnfOcTuoh5HDlJl3?= =?utf-8?q?CMjO+NDctlrcUbGdEPa9nWkSTpNJ/92XCy3nsnxWE7TnoN6EmFs1WNzS8FLNZR9Ic?= =?utf-8?q?qjl0F5S0tK2V?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: f28d382f-0526-4994-d425-08dd39458c55 X-MS-Exchange-CrossTenant-AuthSource: AM9PR04MB8604.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jan 2025 11:28:22.7372 (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: cstHu/dum3joOUnw94N0AzDZWS6AhOsc/CJdf2sOpQmc9l88f5qon0OwnkCynuGwveH+fmPWlD2uvRxsz8MUUA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9551 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250120_032827_074117_40204302 X-CRM114-Status: GOOD ( 14.09 ) 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: