From: Alexander Stein <alexander.stein@ew.tq-group.com>
To: Peng Fan <peng.fan@oss.nxp.com>
Cc: Peng Fan <peng.fan@nxp.com>, 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>,
Srinivas Kandagatla <srinivas.kandagatla@linaro.org>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"imx@lists.linux.dev" <imx@lists.linux.dev>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v2 04/10] arm64: dts: imx8mn: Add access-controller references
Date: Wed, 12 Feb 2025 09:10:53 +0100 [thread overview]
Message-ID: <10618164.nUPlyArG6x@steina-w> (raw)
In-Reply-To: <20250211033340.GA13109@localhost.localdomain>
Am Dienstag, 11. Februar 2025, 04:33:41 CET schrieb Peng Fan:
>
> On Mon, Feb 10, 2025 at 04:48:56PM +0100, Alexander Stein wrote:
> >Am Montag, 10. Februar 2025, 03:36:48 CET schrieb Peng Fan:
> >> > Subject: Re: [PATCH v2 04/10] arm64: dts: imx8mn: Add access-
> >> > controller references
> >> >
> >> > Hi Peng,
> >> >
> >> > Am Freitag, 7. Februar 2025, 13:02:13 CET schrieb Peng Fan:
> >> > > On Fri, Feb 07, 2025 at 09:36:09AM +0100, Alexander Stein wrote:
> >> > > >Mark ocotp as a access-controller and add references on peripherals
> >> > > >which can be disabled (fused).
> >> > >
> >> > > I am not sure whether gpcv2 changes should be included in this
> >> > > patchset or not. Just add access-controller for fused IP will not work.
> >> >
> >> > Well, I was able to successfully boot a i.MX8M Nano DualLite.
> >> >
> >> > > i.MX8M BLK-CTRL/GPC will hang if the related power domain is still
> >> > > touched by kernel. The pgc can't power up/down because clock is
> >> > gated.
> >> >
> >> > Well, with GPU node disabled, no one should enable the power domain.
> >> > But to be on the safe side I would also add access-controllers to the
> >> > corresponding power domains as well.
> >> >
> >> > > This comment also apply to i.MX8MM/P.
> >> >
> >> > Sure. Do you have any information what is actually disabled by those
> >> > fused?
> >> > It seems it's the IP and their power domains. Anything else?
> >>
> >> In NXP downstream there is a patch for drivers/pmdomain/imx/imx8m-blk-ctrl.c
> >>
> >> soc: imx8m-blk-ctrl: Support fused modules
> >>
> >> For fused module, its pgc can't power up/down and clock is gated.
> >> Because imx8m-blk-ctrl driver will pm_runtime_get_sync/pm_runtime_put
> >> all power domains during suspend/resume. So we have to remove the
> >> pgc and clock of fused module from blk-ctrl DTS node.
> >> Update the driver to support such case.
> >>
> >> But this patch also needs U-Boot to update device tree nodes,
> >> I recalled that U-Boot will remove gpc nodes, but not update blk-ctrl nodes.
> >
> >Does it work, if we add the access-controller as well for pgc_gpu3d
> >on imx8mp? There is nothing in blk-ctrl AFAICS. But for VPU there is.
>
> Adding access-controller under pgc_gpu node will not make fwdevlink
> work for the pgc_gpu nodes. It does not have compatible, and device
> is created by gpcv2 driver using platform_device_alloc. Same to vpu.
>
> >Which clock needs to be removed there in case g1 is disabled?
>
> Take i.MX8MP VC8000E as example, the vpumix blk ctrl, the vc8000e
> reference under vpumix blkctrl should be removed, including pd and clock.
Wait, so you want to remove the last entry from these properties?
> clocks = <&clk IMX8MP_CLK_VPU_G1_ROOT>,
> <&clk IMX8MP_CLK_VPU_G2_ROOT>,
> <&clk IMX8MP_CLK_VPU_VC8KE_ROOT>;
> clock-names = "g1", "g2", "vc8000e";
This violates the DT binding.
> So for non-blkctrl nodes, it is fine to use access-controller and rely
> on fwdelink to defer probe. But for blk ctrl nodes, it will not work.
>
> For pgc nodes, it may or may not matter, not very sure for now.
>
> For blk ctrl nodes, we need provide a generic API saying
> access_control_check or directly using nvmem API.
Reading access-controllers.yaml this should still be feasible for
providing the necessary information.
But I'm note sure where to implement this. In e.g. imx-ocotp would be a very
SoC-specific API.
Best regards,
Alexander
--
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/
next prev parent reply other threads:[~2025-02-12 8:12 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-07 8:36 [PATCH v2 00/10] Make i.MX8M OCOTP work as accessing controller Alexander Stein
2025-02-07 8:36 ` [PATCH v2 01/10] nvmem: imx-ocotp: Sort header alphabetically Alexander Stein
2025-02-07 8:36 ` [PATCH v2 02/10] nvmem: imx-ocotp: Support accessing controller for i.MX8M Alexander Stein
2025-02-07 15:22 ` Frank Li
2025-02-07 8:36 ` [PATCH v2 03/10] arm64: dts: imx8mn: Add i.MX8M Nano OCOTP disable fuse definitions Alexander Stein
2025-02-07 11:54 ` Peng Fan
2025-02-07 8:36 ` [PATCH v2 04/10] arm64: dts: imx8mn: Add access-controller references Alexander Stein
2025-02-07 12:02 ` Peng Fan
2025-02-07 12:37 ` Alexander Stein
2025-02-10 2:36 ` Peng Fan
2025-02-10 15:48 ` Alexander Stein
2025-02-11 3:33 ` Peng Fan
2025-02-12 8:10 ` Alexander Stein [this message]
2025-02-12 8:22 ` Peng Fan
2025-02-07 8:36 ` [PATCH v2 05/10] arm64: dts: imx8mp: Add i.MX8M Plus OCOTP disable fuse definitions Alexander Stein
2025-02-07 15:23 ` Frank Li
2025-02-07 8:36 ` [PATCH v2 06/10] arm64: dts: imx8mp: Add access-controller references Alexander Stein
2025-02-07 8:36 ` [PATCH v2 07/10] arm64: dts: imx8mm: Add i.MX8M Mini OCOTP disable fuse definitions Alexander Stein
2025-02-07 8:36 ` [PATCH v2 08/10] arm64: dts: imx8mm: Add access-controller references Alexander Stein
2025-02-07 8:36 ` [PATCH v2 09/10] arm64: dts: imx8mq: Add i.MX8M OCOTP disable fuse definitions Alexander Stein
2025-02-07 15:24 ` Frank Li
2025-02-07 8:36 ` [PATCH v2 10/10] arm64: dts: imx8mq: Add access-controller references Alexander Stein
2025-02-07 9:03 ` Alexander Stein
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=10618164.nUPlyArG6x@steina-w \
--to=alexander.stein@ew.tq-group.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=festevam@gmail.com \
--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=peng.fan@nxp.com \
--cc=peng.fan@oss.nxp.com \
--cc=robh@kernel.org \
--cc=s.hauer@pengutronix.de \
--cc=shawnguo@kernel.org \
--cc=srinivas.kandagatla@linaro.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;
as well as URLs for NNTP newsgroup(s).