Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CI All Things! #1385

Open
1 of 4 tasks
LeStarch opened this issue Apr 12, 2022 · 4 comments
Open
1 of 4 tasks

CI All Things! #1385

LeStarch opened this issue Apr 12, 2022 · 4 comments
Labels
enhancement High Priority High Priority issue that needs to be resolved.

Comments

@LeStarch
Copy link
Collaborator

LeStarch commented Apr 12, 2022

F´ Version
Affected Component

Feature Description

More improvements that can be made to CI!

  • Various FW_CONFIG options
  • Baremetal support
  • RPI CI reboot on failure: the RPI CI setup often fails for reasons unknown that a reboot of the pi fixes. It could auto reboot on failure and require less hand-holding.
  • Configuration flags (FpConfig.hpp)
    ...more will be added
@LeStarch LeStarch added enhancement Low Priority Low prioirty items given the current project priorities. labels Apr 12, 2022
@SterlingPeet
Copy link
Contributor

reminder to myself that I need to gather up some hardware

@ThibFrgsGmz
Copy link
Contributor

Maybe it would be interesting to put in the CI the construction of a reference binary from several buildchain.

From what I could see, this is a good practice for software trying to support different architectures, like ThreadX which has in its CI the build with Cortex-M0/3/4/7.

If we follow this logic, it could be interesting to add in the CI the build of the reference binary with the following buildchain (for example):

  • ARM R5 g++ compiler/linker (cortex-R5 baremetal): armr5-none-eabi-g++
  • ARM v8 Linux g++ compiler/linker (cortex-A53 linux): aarch64-linux-gnu-g++
  • ARM v8 g++ compiler/linker (cortex-A9 baremetal) : arm-none-eabi-g++
  • GNU RISC-V Cross C++ compiler/binder (baremetal): riscv64-unknown-elf-g++
  • GNU ARM Cross C++ compiler/associator (cortex-M3 baremetal): arm-none-eabi-g++.

Cortex-A53 and Cortex-R5 are integrated on the Zynq UltraScale+MPSoC platforms from Xilinx.

RISC-V is used on the Polarfire SoC from Microchip.

Then, for the execution of the unit tests associated with these cross-compiled binaries, they can be performed on emulators like QEMU or Renode.

@LeStarch
Copy link
Collaborator Author

That is the dream, but first we need solid toolchain implementations for these platforms...

@LeStarch
Copy link
Collaborator Author

#1443 has another CI improvement.

@LeStarch LeStarch added High Priority High Priority issue that needs to be resolved. and removed Low Priority Low prioirty items given the current project priorities. labels Mar 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement High Priority High Priority issue that needs to be resolved.
Projects
None yet
Development

No branches or pull requests

3 participants