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

[TASK] zephyr RTOS support on Ariane SDK #2480

Open
1 task done
WorldofJARcraft opened this issue Aug 30, 2024 · 5 comments
Open
1 task done

[TASK] zephyr RTOS support on Ariane SDK #2480

WorldofJARcraft opened this issue Aug 30, 2024 · 5 comments
Assignees
Labels
notCV32A65X It is not an CV32A65X issue

Comments

@WorldofJARcraft
Copy link

Is there an existing CVA6 task for this?

  • I have searched the existing task issues

Task Description

Hello all, I wanted to let you know that I am working on adding support for the CVA6 CPU in the zephyr RTOS.

Required Changes

No hardware changes are needed, but I would like to add a link to the board directory, instructions etc. in the CVA6 README once zephyr accepts my pull requests.

Current Status

I have created three draft pull requests in zephyr:

  1. boards: openhwgroup: add CV64A6 on GenesysII board zephyrproject-rtos/zephyr#77792 adds support for the CVA6 SoC on the GenesysII board that is contained in this repository.
  2. boards: openhwgroup: add CV64A6 on GenesysII board zephyrproject-rtos/zephyr#77734 adds support for my forked CVA6 SoC with Xilinx AXI Ethernet.
  3. boards: openhwgroup: add CV64A6 on GenesysII board zephyrproject-rtos/zephyr#77792 adds support for running zephyr in the cva6 test harness. I have added examples that demonstrate how to indicate success/failure from within zephyr to the testbench.

I have tested 1. and 3. extensively, and I will test 2. with a recent build of the CVA6 project ASAP.

Risks

The zephyr configuration might go out of sync if devices are removed from the SoC or registers or other hardware configurations change, rendering the zephyr configuration unusable.
In order to combat this, I can document the CVA6 tag that I last tested with zephyr on the zephyr side.

Prerequisites

None as this is only documentation.

KPI (KEY Performance Indicators)

None

Description of Done

Once zephyr has accepted my PRs, a link to the boards in zephyr should be added to the CVA6 README.

Associated PRs

See above

@WorldofJARcraft
Copy link
Author

I have also sent PRs with drivers for the Xilinx AXI ethernet system to zephyr. As my board configurations depend on these drivers, and the PRs for the drivers are not merged yet, it might take a while for the PRs I have linked above to be merged.

@JeanRochCoulon
Copy link
Contributor

Hello, Your proposal seems interesting. Maybe @jquevremont can help.

@JeanRochCoulon JeanRochCoulon added the notCV32A65X It is not an CV32A65X issue label Sep 19, 2024
@jquevremont
Copy link
Contributor

Hi Erik,
FYI, Thales has added Zephyr on CVA6, but not in the Zephyr repo: https://github.com/ThalesGroup/cva6-softcore-contest/tree/cv32a6_contest_2022.
I will mention your contribution in the "ecosystem/resources" document that I have started preparing also mentioning your Xilinx/Ethernet 2.5G design. I need to find some time to come to a publishable version.
Thanks for your patience.

@jquevremont
Copy link
Contributor

Hi @WorldofJARcraft. When the PR is merged, can you ping me so that I can complete the upcoming RESOURCES documentt with the links (#2514)?

@WorldofJARcraft
Copy link
Author

I will let you know when the PR in zephyr is merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
notCV32A65X It is not an CV32A65X issue
Projects
None yet
Development

No branches or pull requests

3 participants