RK3588 part X small success.
Michael Grunditz
michael.grunditz at gmail.com
Thu Jan 5 12:01:11 CET 2023
On Thu, 5 Jan 2023 at 09:29, Stefan Kalkowski
<stefan.kalkowski at genode-labs.com> wrote:
>
> Hello Michael,
>
> I try to summarize what I understood from your previous e-mails:
>
Thanks for reading! :-)
> * u-boot normally starts on the RK3588 SoC in EL2 with MMU enabled,
> and enabled caches
True
> * when using the unchanged Genode base-hw bootstrap code, you then
> stuck when issuing a Genode::raw (how do you know, it is exactly
> that point? does it provoke an exception shown by u-boot? and if yes
> what kind of exception?)
I get a dump (Exception from an unknown reason). I can write
characters to uart, phys address. (*ser='m')
So I know it crashes on genode api . I have a couple of raw printouts
and I get crash
if mmu is disabled and no crash if I comment them out.
> * when removing the MMU disabling within the bootstrap assembler code,
> you can proceed, and you see Genode::raw messages
>
Yes. But no luck with EL switching.
> Is this correct?
>
> If the MMU disabling is the important point with regard to the UART
> usage (if this is 100% the issue), either u-boot doesn't setup 1:1
> physical to virtual mappings, which is less probable, or the
> page-table attributes for the I/O memory mapping of the UART is
> essential for the way it is used.
>
The last option.
I need to dig a bit more into this. If starting in EL1, which makes
Genode to boot up,
I get crash from mmu disabling. Uboot sets sctlr_el1to disabled.
https://github.com/u-boot/u-boot/blob/master/arch/arm/include/asm/macro.h#L273.
It doesn't make sense.
Thanks
Michael
More information about the users
mailing list