[PATCH 10/10] arm: imx: imx8m: Add basic PSCI provider implementation

Adam Ford aford173 at gmail.com
Tue Jan 3 02:05:05 CET 2023


On Mon, Jan 2, 2023 at 5:58 PM Marek Vasut <marex at denx.de> wrote:
>
> On 1/3/23 00:47, Adam Ford wrote:
> > On Mon, Jan 2, 2023 at 5:41 PM Marek Vasut <marex at denx.de> wrote:
> >>
> >> On 1/2/23 17:44, Adam Ford wrote:
> >>> On Wed, Dec 21, 2022 at 9:58 PM Marek Vasut <marex at denx.de> wrote:
> >>>>
> >>>> On 12/22/22 04:05, Adam Ford wrote:
> >>>>> On Wed, Dec 21, 2022 at 6:47 PM Marek Vasut <marex at denx.de> wrote:
> >>>>>>
> >>>>>> Implement basic PSCI provider to let OS turn CPU cores off and on,
> >>>>>> power off and restart the system and determine PSCI version. This
> >>>>>> is sufficient to remove the need for the ATF BL31 blob altogether.
> >>>>>>
> >>>>>> To make use of this functionality, active the following Kconfig options:
> >>>>>>      # CONFIG_PSCI_RESET is not set
> >>>>>>      CONFIG_ARMV8_MULTIENTRY=y
> >>>>>>      CONFIG_ARMV8_SET_SMPEN=y
> >>>>>>      CONFIG_ARMV8_SPL_EXCEPTION_VECTORS=y
> >>>>>>      CONFIG_ARMV8_EA_EL3_FIRST=y
> >>>>>>      CONFIG_ARMV8_PSCI=y
> >>>>>>      CONFIG_ARMV8_PSCI_CPUS_PER_CLUSTER=4
> >>>>>>      CONFIG_ARMV8_SECURE_BASE=0x970000
> >>>>>
> >>>>>     I am guessing 0x970000 was for the 8MP based on the previous location
> >>>>> of ATF.  Is that true?   If that's the case, can I assume that this
> >>>>> address would be  0x910000, 0x920000 and 0x960000 for the imx8mq,
> >>>>> imx8mm and imx8mn respectively?
> >>>>
> >>>> It was for MX8MP, but you can pick whichever address you want, since it
> >>>> is U-Boot that installs the SMC handlers, you are no longer forced to
> >>>> somehow try and accommodate custom not well fitting load address picked
> >>>> by some 3rd party binary blob.
> >>>
> >>> I patched U-Boot's master with this series and I tried it on
> >>> imx8mn_beacon and imx8mm_beacon without success. I never even saw the
> >>> SPL message.  I tried to focus on the Nano since the boot ROM in that
> >>> one is more similar to that of the 8mp, but the behaviour was similar
> >>> to that of the Nano.  Are there any dependencies or should I have used
> >>> a specific starting branch?
> >>
> >> Nope . But if you don't even see output from SPL, that's where I would
> >> start looking. Do you see output from SPL without this series ? Note
> >> that bulk of this series content applies to U-Boot proper, not SPL so far.
> >
> > Without the patch series the generated flash.bin file booted both the
> > Mini and the Nano just fine.  I have a pending 8m plus that I can also
> > try, since that is what you used.  I just wanted to make sure I was
> > starting from the right place before I went too far with it.
>
> Try and drop
>
> [PATCH 09/10] arm: imx: imx8m: Program CSU and TZASC if PSCI provider
>
> does SPL start then ?

I reverted 9/19 without success either.  I'll try to do a git bisect
to see if I can narrow it down.  I might see if my employer will let
me borrow  a debugger.  Debugging SPL is a bit challenging due to the
relocation step, but I am not convinced I am geting that far since I
get no text output at all.
>
> I plan to try this on Nano at some point this month too.

I'll let you know my findings when I get some more time to test this.

adam


More information about the U-Boot mailing list