From: Frieder Schrempf <frieder.schrempf@kontron.de>
To: Marco Felsch <m.felsch@pengutronix.de>,
Pankaj Gupta <pankaj.gupta@nxp.com>
Cc: Jonathan Corbet <corbet@lwn.net>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Shawn Guo <shawnguo@kernel.org>,
Sascha Hauer <s.hauer@pengutronix.de>,
Pengutronix Kernel Team <kernel@pengutronix.de>,
Fabio Estevam <festevam@gmail.com>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"imx@lists.linux.dev" <imx@lists.linux.dev>,
"linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
Frank Li <frank.li@nxp.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>
Subject: Re: [EXT] Re: [PATCH v18 3/7] firmware: imx: add driver for NXP EdgeLock Enclave
Date: Mon, 30 Jun 2025 12:32:30 +0200 [thread overview]
Message-ID: <b02055bb-0995-4fd8-99f3-4ca5146eedd4@kontron.de> (raw)
In-Reply-To: <20250627084653.6vgwnm3llf3zknlp@pengutronix.de>
Hi Marco,
Am 27.06.25 um 10:46 schrieb Marco Felsch:
> Hi,
>
> your e-mail configuration mixed my e-mail with your answer, which makes
> it hard to read. Can you please check the quoting next time :)
>
> On 25-06-27, Pankaj Gupta wrote:
>>>> Add driver for enabling MU based communication interface to
>> secure-enclave.
>>>>
>>>> NXP hardware IP(s) for secure-enclaves like Edgelock Enclave(ELE), are
>>>> embedded in the SoC to support the features like HSM, SHE & V2X, using
>>>> message based communication interface.
>>>>
>>>> The secure enclave FW communicates with Linux over single or multiple
>>>> dedicated messaging unit(MU) based interface(s).
>>>> Exists on i.MX SoC(s) like i.MX8ULP, i.MX93, i.MX95 etc.
>>
>>> You write single or multiple MUs are possible. I'm aware that the i.MX93
>>> has two MUs one for the secure and one for the non-secure world. But I'm
>>> really concerned about the fact that both MUs can't be used at the same time
>>> from both world:
>>
>> Yes, you are correct.
>>
>> Fix is still work in progress.
>
> So after ~6 months no fix is available :(
>
>>> Also how is the secure and non-secure world talking to the ELE if there is
>>> only one MU as you have written?
>>
>> Till the fix is WIP, either Linux or OPTEE can use the ELE, at one point in
>> time.
>
> That has nothing to do with the fix. The fix is for platforms/SoCs which
> do have 2-MUs, but you also have written that there are platforms with
> only 1-MU.
>
> This MU can't be shared between secure and non-secure world.
>
>>> IMHO it makes much more sense to put the complete ELE communication into
>>> (OP-)TEE and let the secure OS taking care of it. All non-secure world
>>> requests are passed via (OP-)TEE to the ELE. This involves:
>>> - eFuse access (done via OP-TEE i.MX specific PTA)
>>> - ELE 23h59m ping (kernel SMC WDG driver, requires OP-TEE watchdog driver)
>>> - HW-RNG (kernel OP-TEE HWRNG driver + OP-TEE HWRNG PTA)
>>
>> There is a dedicated MU "trusted-MU" for OPTEE-OS. The idea to converge to a
>
> Yes for systems with 2-MUs there is a "trusted-MU" and a
> "non-trusted-MU". As of now, there is no fix available for using both
> MUs at the same time. Furhtermore there are platforms/SoCs with only
> 1-MU, as you have written in your commit message. This 1-MU system can
> have the MU either trusted or non-trusted.
>
>> single path via OPTEE-OS, is good. But it will impact the performance of the
>> features at Linux side.
>
> Performance? We are talking about a ping every 23h59m (I still don't
> know if this is a feature or bug), eFuse write/read, and the HW-RNG
> which can seed the Linux PRNG.
>
>> Since the fix is still WIP. Let's wait till then.
>
> The fix is for the 2-MUs SoCs but not the 1-MU case.
>
> I would like to have a system design which doesn't differ too much
> between SoCs which are equipped with the ELE engine.
Do we really want to depend on OP-TEE to be available for having things
like OTP fuse access and HWRNG? Personally I'd like to be able to build
systems with OTP access and HWRNG but without OP-TEE. Requiring OP-TEE
only to make the ELE available to the kernel in cases where the secure
world isn't used for anything else seems to be unnecessarily complex.
Anyway, I see your point of having a single implementation for the ELE
API in the "right" place. But as far as I know other platforms like
STM32MP1 also implement both ways for the HWRNG, secure access via OPTEE
and non-secure access via kernel directly.
Thanks
Frieder
next prev parent reply other threads:[~2025-06-30 10:32 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-19 17:20 [PATCH v18 0/7] firmware: imx: driver for NXP secure-enclave Pankaj Gupta
2025-06-19 17:20 ` [PATCH v18 1/7] Documentation/firmware: add imx/se to other_interfaces Pankaj Gupta
2025-06-19 17:20 ` [PATCH v18 2/7] dt-bindings: arm: fsl: add imx-se-fw binding doc Pankaj Gupta
2025-06-19 17:20 ` [PATCH v18 3/7] firmware: imx: add driver for NXP EdgeLock Enclave Pankaj Gupta
2025-06-25 10:55 ` Marco Felsch
2025-06-27 7:11 ` [EXT] " Pankaj Gupta
2025-06-27 8:46 ` Marco Felsch
2025-06-30 10:32 ` Frieder Schrempf [this message]
2025-06-30 12:17 ` Marco Felsch
2025-07-01 10:44 ` Frieder Schrempf
2025-07-09 10:18 ` Pankaj Gupta
2025-07-14 9:41 ` Marco Felsch
2025-08-06 12:19 ` Pankaj Gupta
2025-08-06 13:27 ` Marco Felsch
2025-08-21 11:59 ` Pankaj Gupta
2025-08-21 13:21 ` Marco Felsch
[not found] ` <DU2PR04MB859982BC71F6CB8182EA1F5F9539A@DU2PR04MB8599.eurprd04.prod.outlook.com>
2025-08-29 11:33 ` Varun Sethi
2025-09-03 9:18 ` Pankaj Gupta
2025-06-19 17:20 ` [PATCH v18 4/7] firmware: imx: device context dedicated to priv Pankaj Gupta
2025-06-19 17:20 ` [PATCH v18 5/7] firmware: drivers: imx: adds miscdev Pankaj Gupta
2025-06-19 17:20 ` [PATCH v18 6/7] arm64: dts: imx8ulp: add secure enclave node Pankaj Gupta
2025-06-19 17:20 ` [PATCH v18 7/7] arm64: dts: imx8ulp-evk: add reserved memory property Pankaj Gupta
2025-06-25 10:34 ` [PATCH v18 0/7] firmware: imx: driver for NXP secure-enclave Marco Felsch
2025-08-20 13:49 ` Frieder Schrempf
2025-08-21 9:50 ` Marco Felsch
2025-08-21 9:59 ` Peng Fan
2025-08-21 10:05 ` Marco Felsch
2025-08-21 12:02 ` [EXT] " Pankaj Gupta
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b02055bb-0995-4fd8-99f3-4ca5146eedd4@kontron.de \
--to=frieder.schrempf@kontron.de \
--cc=conor+dt@kernel.org \
--cc=corbet@lwn.net \
--cc=devicetree@vger.kernel.org \
--cc=festevam@gmail.com \
--cc=frank.li@nxp.com \
--cc=imx@lists.linux.dev \
--cc=kernel@pengutronix.de \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=m.felsch@pengutronix.de \
--cc=pankaj.gupta@nxp.com \
--cc=robh@kernel.org \
--cc=s.hauer@pengutronix.de \
--cc=shawnguo@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®