From: Francesco Dolcini <francesco@dolcini.it>
To: Frieder Schrempf <frieder.schrempf@kontron.de>
Cc: Alexander Stein <alexander.stein@ew.tq-group.com>,
Francesco Dolcini <francesco@dolcini.it>,
linux-arm-kernel@lists.infradead.org,
Frieder Schrempf <frieder@fris.de>,
Srinivas Kandagatla <srini@kernel.org>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>, Frank Li <Frank.Li@nxp.com>,
Sascha Hauer <s.hauer@pengutronix.de>,
Pengutronix Kernel Team <kernel@pengutronix.de>,
Fabio Estevam <festevam@gmail.com>,
Shawn Guo <shawnguo@kernel.org>,
Pankaj Gupta <pankaj.gupta@nxp.com>,
"Peng Fan (OSS)" <peng.fan@oss.nxp.com>,
devicetree@vger.kernel.org, imx@lists.linux.dev,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 10/10] arm64: dts: imx93-kontron: Enable ELE firmware driver
Date: Wed, 22 Jul 2026 18:12:22 +0200 [thread overview]
Message-ID: <20260722161222.GA4216@francesco-nb> (raw)
In-Reply-To: <88bb9b8b-a04a-4a15-b738-0ef39c368bd8@kontron.de>
On Wed, Jul 22, 2026 at 05:27:00PM +0200, Frieder Schrempf wrote:
> On 22.07.26 17:09, Alexander Stein wrote:
> > Am Mittwoch, 22. Juli 2026, 16:49:10 CEST schrieb Frieder Schrempf:
> >> On 14.07.26 14:37, Alexander Stein wrote:
> >>> Am Dienstag, 14. Juli 2026, 14:33:50 CEST schrieb Francesco Dolcini:
> >>>> On Tue, Jul 14, 2026 at 02:06:38PM +0200, Alexander Stein wrote:
> >>>>> Am Dienstag, 14. Juli 2026, 11:33:54 CEST schrieb Francesco Dolcini:
> >>>>>> On Tue, Jul 14, 2026 at 10:43:56AM +0200, Frieder Schrempf wrote:
> >>>>>>> On 14.07.26 10:32, Francesco Dolcini wrote:
> >>>>>>>> On Tue, Jul 14, 2026 at 10:09:11AM +0200, Frieder Schrempf wrote:
> >>>>>>>>> Hi Francesco,
> >>>>>>>>>
> >>>>>>>>> On 14.07.26 08:59, Francesco Dolcini wrote:
> >>>>>>>>>> Hello Frieder,
> >>>>>>>>>>
> >>>>>>>>>> On Mon, Jul 13, 2026 at 04:53:46PM +0200, Frieder Schrempf wrote:
> >>>>>>>>>>> From: Frieder Schrempf <frieder.schrempf@kontron.de>
> >>>>>>>>>>>
> >>>>>>>>>>> Add the ELE firmware API node and pass its handle to the OCOTP
> >>>>>>>>>>> driver. This allows us to gain read/write access to the OTP fuses.
> >>>>>>>>>>
> >>>>>>>>>> This seems something we should have in the soc dtsi (imx93/imx91), it
> >>>>>>>>>> does not seems board specific.
> >>>>>>>>>
> >>>>>>>>> My original intention was to move as much as possible into the SoC dtsi.
> >>>>>>>>> The problem is that the memory node is somewhat board specific due to
> >>>>>>>>> the DDR. And I can't move the firmware node into the SoC dtsi and assign
> >>>>>>>>> the memory node in the board dts as the checks for all boards not
> >>>>>>>>> specifying a memory node would fail then.
> >>>>>>>>
> >>>>>>>> What is the reason to have this memory address different on various
> >>>>>>>> boards? Can we have a default in the soc dtsi, and allow the board to
> >>>>>>>> override the address if needed?
> >>>>>>>
> >>>>>>> There is no real point in having different addresses on different
> >>>>>>> boards. But the node describes memory that is physically on the board
> >>>>>>> and not on the SoC. And I think that is why DT maintainers want to have
> >>>>>>> it in the board DT. It's the same with the memory nodes for the
> >>>>>>> remoteproc drivers to communicate with the Cortex M-Cores in the i.MX.
> >>>>>>> But maybe I'm wrong and if there is a possibility to move this to the
> >>>>>>> SoC DT I will definitely take it.
> >>>>>
> >>>>> We are talking about reserved memory, so this is highly board-specific.
> >>>>> So for different hardware variants with different amount of RAM you have to
> >>>>> go for the minimum anyway.
> >>>>>
> >>>>>>>>
> >>>>>>>> Or can't you add the address in all the boards, and keep everything else
> >>>>>>>> in the soc dtsi?
> >>>>>>> This could be a possible way, yes. In that case maybe we could even
> >>>>>>> create a generic dtsi to contain such defaults for all boards.
> >>>>>>
> >>>>>> I would go for this solution, we could have something like
> >>>>>> `k3-am62-ti-ipc-firmware.dtsi`, include it from all the boards, have a
> >>>>>> sane default memory address, and have an easy way to override the memory
> >>>>>> address from the board dts, if needed.
> >>>>>
> >>>>> So what is a sane default? At the end of the minimal possible RAM?
> >>>>> I'm not really fond of something you have to make sure matches to your
> >>>>> hardware, but won't raise an error if you forgot.
> >>>>>
> >>>>> How about providing defaults for the SoC part and users have to provide their
> >>>>> memory on board-level? Similar to the VPU nodes on imx8qm/imx8qxp. There you
> >>>>> have to specify memory-region in your board.
> >>>>
> >>>> I am personally ok with both solution.
> >>>>
> >>>> I think it is easy to have a sane default in this case. You cannot have
> >>>> less than 256MiB in practice, and this is just about the offset, is not
> >>>> that you are going to want more memory reserved if the board has more
> >>>> memory available.
> >>>>
> >>>> At the same time, having the memory range in the board dts is also ok to
> >>>> me.
> >>>
> >>> I'm just saying, because we had lots of problem with assumed offsets/length
> >>> in code/DT for NXP boards. They usually come with big/huge amount of RAM.
> >>> This breaks for all hardware using a small amount of RAM.
> >>> So it's better to not have a default than silently breaking things because
> >>> the default doesn't match.
> >> I'm revisiting this now and think about how to do it. I would like to
> >> put a default memory node in the dtsi that dynamically puts the buffer
> >> somewhere in the first 256MB. I would include the dtsi in all
> >> i.MX91/i.MX93 boards. I think this should work for all boards.
> >>
> >> If I put everything, but the memory node in the default dtsi, as
> >> Alexander proposed, I think I will run into DT validation errors if not
> >> all boards provide a memory node, as the property is mandatory.
> >>
> >> Is there anything I might be missing?
> >
> > Mh, isn't that exactly the situation you want to catch as a DT author?
> > Raise errors early if something is missing in the DT.
> > I would go that way that for all currently existing boards an corresponding
> > memory node could be added, no? All coming boards will need to provide it..
> >
> Ok, but what would be the benefit compared to putting the node in the
> common dtsi and including that for all existing boards? People adding
> new boards would just copy the memory node from some other board anyway.
> This way we could at least avoid the duplication.
>
> And as I don't know all the details for the existing boards, I can't
> provide anything better than a default memory node.
What would be the reason for not wanting to have such memory node in the
first 256MiB defined in this dtsi include?
Francesco
prev parent reply other threads:[~2026-07-22 16:12 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-13 14:53 [PATCH v2 00/10] Support ELE API in i.MX OCOTP NVMEM driver Frieder Schrempf
2026-07-13 14:53 ` [PATCH v2 01/10] dt-bindings: nvmem: imx-ocotp: Add support for secure-enclave Frieder Schrempf
2026-07-14 8:00 ` Frieder Schrempf
2026-07-13 14:53 ` [PATCH v2 02/10] firmware: imx: ele: Fix indentation in ele_base_msg.h Frieder Schrempf
2026-07-14 14:08 ` Frank Li
2026-07-13 14:53 ` [PATCH v2 03/10] firmware: imx: ele: Export API functions Frieder Schrempf
2026-07-14 14:08 ` Frank Li
2026-07-13 14:53 ` [PATCH v2 04/10] nvmem: imx-ocotp-ele: Add keepout table for i.MX93 Frieder Schrempf
2026-07-13 14:53 ` [PATCH v2 05/10] nvmem: imx-ocotp-ele: Remove device-specific reg_read() Frieder Schrempf
2026-07-13 14:53 ` [PATCH v2 06/10] nvmem: imx-ocotp-ele: Use __free(kfree) in imx_ocotp_reg_read() Frieder Schrempf
2026-07-13 14:53 ` [PATCH v2 07/10] nvmem: imx-ocotp-ele: Support the ELE API Frieder Schrempf
2026-07-13 14:53 ` [PATCH v2 08/10] nvmem: imx-ocotp-ele: Remove the FUSE_ELE type Frieder Schrempf
2026-07-13 14:53 ` [PATCH v2 09/10] nvmem: imx-ocotp-ele: Rename FSB access map Frieder Schrempf
2026-07-13 14:53 ` [PATCH v2 10/10] arm64: dts: imx93-kontron: Enable ELE firmware driver Frieder Schrempf
2026-07-14 6:59 ` Francesco Dolcini
2026-07-14 8:09 ` Frieder Schrempf
2026-07-14 8:32 ` Francesco Dolcini
2026-07-14 8:43 ` Frieder Schrempf
2026-07-14 9:33 ` Francesco Dolcini
2026-07-14 12:06 ` Alexander Stein
2026-07-14 12:33 ` Francesco Dolcini
2026-07-14 12:37 ` Alexander Stein
2026-07-22 14:49 ` Frieder Schrempf
2026-07-22 15:09 ` Alexander Stein
2026-07-22 15:27 ` Frieder Schrempf
2026-07-22 16:12 ` Francesco Dolcini [this message]
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=20260722161222.GA4216@francesco-nb \
--to=francesco@dolcini.it \
--cc=Frank.Li@nxp.com \
--cc=alexander.stein@ew.tq-group.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=festevam@gmail.com \
--cc=frieder.schrempf@kontron.de \
--cc=frieder@fris.de \
--cc=imx@lists.linux.dev \
--cc=kernel@pengutronix.de \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=pankaj.gupta@nxp.com \
--cc=peng.fan@oss.nxp.com \
--cc=robh@kernel.org \
--cc=s.hauer@pengutronix.de \
--cc=shawnguo@kernel.org \
--cc=srini@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