Successful Hello world from RPi4B AArch64 over serial

Joel Sherrill joel at rtems.org
Mon Sep 19 16:14:50 UTC 2022


On Mon, Sep 19, 2022 at 10:11 AM Noor Aman <nooraman5718 at gmail.com> wrote:

> Hey everyone,
> I've managed to get RTEMS6 on the Raspberry pi 4B rev 1.4. Every test ran
> fine except for minimum.exe, It gave a fatal error.
>

Congratulations! Hoozah!

minimum.exe is supposed to reflect the smallest application you can have.
It barely qualifies as an application as the Initialization task exits from
the
thread body and that's what triggers the fatal error. It is expected so
that's a
pass. Unfortunately, the exception frame you posted to Discord has what
looks like a mistake in printing the idle thread id (see name on next line):

*** FATAL ***
fatal source: 0 (INTERNAL_ERROR_CORE)
fatal code: 5 (INTERNAL_ERROR_THREAD_EXITTED)
RTEMS version: 6.0.0.ee92899632c823e19aa4f2e7048af3d910f59be2
RTEMS tools: 12.1.1 20220622 (RTEMS 6, RSB
eea379370116628dbe91f19e61ad6129aa1951ac, Newlib ea99f21)
executing thread ID: 0x089010001                   <====
executing thread name: IDLE


Kinsey can you run this on one of the aarch64 bit targets you have?
I suspect this is not a Pi specific issue but maybe something in
printk? Or the printf format specifier used.  Once more is known, this
likely will need a ticket.

Try the fileio, cdtest, nsecs, and paranoia samples next. If those
look ok, it is highly likely that most of the single processor tests
will run.

fileio requires working console input.


>
> Here's my setup for running RTEMS6 on RPi4B:
>
> TF-A is required to enable GIC on RPi. I had tried to use armstub-gic.S (
> https://github.com/raspberrypi/tools/blob/master/armstubs/armstub8.S) but
> it didn't work out. TF-A on other hand did work pretty well.
>
> Steps to get TF-A binary are described here:
> https://trustedfirmware-a.readthedocs.io/en/latest/plat/rpi4.html
>


>
> Config.txt section:
> arm_64bit=1
> enable_uart=1
> gpio=22-27=np
> enable_jtag_gpio=1
> dtoverlay=disable-bt
> kernel=kernel8.img
> enable_gic=1
> armstub=bl31.bin
>
> RTEMS6
> My branch (noov-dev): https://github.com/0xnoor/rtems/tree/noor-dev
>

Now work to get this all cleaned up, merged, and documented. Kinsey
now has a Pi4 ready to double check your work is repeatable from
rtems.org sources.

--joel

>
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20220919/758e1aff/attachment.htm>


More information about the devel mailing list