Description
We have a Cortex-M team focused on bare metal (no_std
) development for
Cortex-M devices and an Embedded Linux team focused on development for embedded
Linux devices (this includes Cortex-A devices, MIPS routers, etc.).
Should we make a Cortex-A team focused on bare metal (no_std
) development for
Cortex-A processors? This team would be involved in improving the developer
experience in this area, collecting or writing resources on the topic, and
maintaining and developing widely used crates.
In this space I know of these projects:
- rust-raspi3-tutorial
- The
cortex-a
crate. - Redox port to AArch64
Opportunities I see:
- Develop core crates for bare metal Cortex-A development.
cortex-a
would be
in this group, and perhaps it makes sense to have somecortex-m-rt
like
crate (see also embedonomicon) to boot a RPi 3 or QEMU? What else could go
here? It should not be board specific (e.g. not RPi specific).
-
Make it possible to build AArch64 kernels / programs on stable. The
aarch64-unknown-none
target would help here but a pre-compiledrust-std
component would also be needed to avoid depending on Xargo / cargo-xbuild.
What compilation target does the AArch64 port of Redox use? -
Push for a stable
core::arch::arm
module (see Stable assembly operations #63) to make thecortex-a
crate (see itsasm
module) work on stable w/o depending on GCC.
Who would be interested in forming part of such team?
cc @andre-richter @wizofe and I believe there was another person interested but
I forgot their name :-(
cc @Amanieu? I know you maintain general purpose no_std
crates and iirc you
work, or have done work, with Cortex-A processors (though it may have been
no_std
programs on top of Linux?)