Adds additional Armv8-R AArch64 example programs#73
Conversation
b2a1190 to
9bd7bc4
Compare
a0c9307 to
4c2c4fe
Compare
|
Ping @davidtwco on this one. |
…-core critical section implementation. The examples expand upon the existing Hello, World example and demonstrate the use of the Arm Generic Interrupt Controller and logging using defmt via the PL011 UART.
4c2c4fe to
7f05560
Compare
Saves a read/modify/write loop.
|
Rebased, and updated to use new DAIFSet/DAIFClr API. |
davidtwco
left a comment
There was a problem hiding this comment.
This looks good to me but I'm not particularly familiar with aarch64-cpu so you might want to get another opinion too.
|
I've read stuff reasonably carefully, but also have no experience with Armv8-R in particular. The changes all look great, and so I'm going to go ahead and merge them based on the approving review. I don't see anything particularly bad happening if there's an issue here. Is there a guide somewhere on how to try this stuff out with QEMU? It would be great if I could see it run myself, but I don't have the funds right now to buy an Armv8-R board. |
|
Armv8-R AArch64 isn't yet supported in QEMU (Armv8-R AArch32 is, but that's a totally different CPU architecture with a different run-time library and target), but you can use the free copy of Arm's Fixed Virtual Platform emulator, which works in a fairly similar way. |
This PR adds additional Armv8-R AArch64 example programs, along with a single-core critical section implementation. The examples expand upon the existing Hello, World example and demonstrate the use of the Arm Generic Interrupt Controller and logging using defmt via the PL011 UART.
This PR was developed by Ferrous Systems on behalf of Arm. Arm is the owner of these changes.
Currently this PR is using a patched copy ofarm-fvp-base-pac(changes at https://review.trustedfirmware.org/c/arm-firmware-crates/arm-fvp-base-pac/+/49345/2) to support the BaseR FVP memory map. I will undraft once that is accepted.Changes to arm-fvp-base-pac available at https://github.com/ArmFirmwareCrates/arm-fvp-base-pac.