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

Add support for SOPHGO SoCs and Milk-V boards #69594

Open
wants to merge 16 commits into
base: main
Choose a base branch
from

Conversation

xingrz
Copy link
Member

@xingrz xingrz commented Feb 29, 2024

This PR ports Zephyr to SOPHGO platforms, including 3 new SoCs and 3 boards:

Board Identifier SoC Link
Milk-V Duo milkv_duo CV1800B https://milkv.io/chips/cv1800b
Milk-V Duo S milkv_duos SG2000 https://milkv.io/chips/sg2000
Milk-V Duo 256M milkv_duo256m SG2002 https://milkv.io/chips/sg2002

The CV1800B is a member of the SOPHGO CV180X series. It's a multi-core RV64 SoC, consists with a 1GHz T-Head C906 RV64 big core running Linux, and a 700MHz C906 RV64 little core running RTOS.

The SG2000/SG2002 is a successor of CV1800B, belonging to the CV181x series. It features a 1GHz ARM Cortex-A53 big core, a 1GHz T-Head C906 RV64 big core (only one big core will be booted base on the selection of a BOOT GPIO), and a 700MHz C906 RV64 little core.

TODOs

@xingrz xingrz force-pushed the milkv-duo/hwmv2/dev branch 4 times, most recently from 1850acb to 3528150 Compare February 29, 2024 07:57
@nordicjm nordicjm added DNM This PR should not be merged (Do Not Merge) hwmv2-likely-conflict labels Feb 29, 2024
@xingrz xingrz force-pushed the milkv-duo/hwmv2/dev branch 6 times, most recently from 3a60a91 to 2a7c3f9 Compare March 1, 2024 08:16
@xingrz xingrz force-pushed the milkv-duo/hwmv2/dev branch from 2a7c3f9 to a6cdd36 Compare March 1, 2024 11:00
@xingrz xingrz force-pushed the milkv-duo/hwmv2/dev branch 2 times, most recently from 7e31aea to eb20e38 Compare March 1, 2024 14:32
@zephyrbot

This comment was marked as outdated.

@henrikbrixandersen
Copy link
Member

Should I open a separate PR to address these warnings?

Yes, please do.

@xingrz xingrz force-pushed the milkv-duo/hwmv2/dev branch 5 times, most recently from fc26b3f to b5207e7 Compare November 23, 2024 03:05
@xingrz xingrz force-pushed the milkv-duo/hwmv2/dev branch from b5207e7 to a0b7890 Compare November 26, 2024 10:53
xingrz and others added 16 commits November 27, 2024 01:20
T-Head is a semiconductor chip business entity of Alibaba Group.

Signed-off-by: Chen Xingyu <[email protected]>
SOPHGO is a company focus on development of TPU and RISC-V processors.

Signed-off-by: Chen Xingyu <[email protected]>
MilkV is a RISC-V MCU company located in Shenzhen, China.

Signed-off-by: Chen Xingyu <[email protected]>
C906 is a RISC-V CPU designed by T-Head. This commit introduces its DTS
binding for later use.

Signed-off-by: Chen Xingyu <[email protected]>
CV180x is a series of RV64 SoCs developed by SOPHGO (formerly CVITEK),
based on T-Head C906 CPU.

Co-authored-by: honglin leng <[email protected]>
Signed-off-by: Chen Xingyu <[email protected]>
SG2000, also named "CV1813H". SG2002, also named "CV1812CP". Both of them
are multi-core SoCs developed by SOPHGO, belonging to the CV181x series.

Signed-off-by: Chen Xingyu <[email protected]>
…ation

This commit adapts the existing RISC-V Machine Timer driver for the T-Head
C906 CPU:

* Although it's a RV64I CPU, the MTIMECMP register must be accessed as
  32-bit values.
* The value of the timer should be read using the `TIME` CSR, instead of
  the standard memory-mapped `MTIME` register.

Signed-off-by: Chen Xingyu <[email protected]>
This commit introduces a pin-controller driver for the CVI series SoCs by
SOPHGO.

Predefined pinmux values are also added. Please refer to the official
datasheet for the naming conventions of pins and signals.

Signed-off-by: Chen Xingyu <[email protected]>
This commit adds PWM driver for CVI series SoCs.

Signed-off-by: Chen Xingyu <[email protected]>
This implements a mailbox driver for CV18xx, a series of multi-core SoCs by
SOPHGO.

This driver enables the little core of CV18xx running RTOS to communicate
with its big core running Linux.

Signed-off-by: honglin leng <[email protected]>
Signed-off-by: Chen Xingyu <[email protected]>
The SOPHGO CVI series SoCs load the RTOS kernel for the 2nd core from a
`fip.bin` located in the main storage.

This commit introduced a convenient script for updating the `fip.bin` on
the external storage mounted to the host, with the newly built
`zephyr.bin`.

Path to the `fiptool.py` from the official SDK should be provided.

Signed-off-by: Chen Xingyu <[email protected]>
Milk-V Duo is a tiny development board shipped with SOPHGO CV1800B.

Signed-off-by: Chen Xingyu <[email protected]>
Duo S is another development board by Milk-V, shipped with SOPHGO SG2000.

Signed-off-by: Chen Xingyu <[email protected]>
Milk-V Duo 256M is the successor of Milk-V Duo, featuring a SOPHGO SG2002
SoC.

Signed-off-by: Chen Xingyu <[email protected]>
This commit adds an overlay to the PWM driver tests for Milk-V boards.

Signed-off-by: Chen Xingyu <[email protected]>
@xingrz xingrz force-pushed the milkv-duo/hwmv2/dev branch from a0b7890 to 1c7a940 Compare November 26, 2024 17:22
Copy link

This pull request has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this pull request will automatically be closed in 14 days. Note, that you can always re-open a closed pull request at any time.

@github-actions github-actions bot added the Stale label Jan 28, 2025
@oresk
Copy link

oresk commented Feb 5, 2025

I this going to happen? Is there anything I can do to make it happen?

@github-actions github-actions bot removed the Stale label Feb 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: Devicetree Binding PR modifies or adds a Device Tree binding area: Devicetree area: GPIO area: mbox area: Pinctrl area: Process area: PWM Pulse Width Modulation area: RISCV RISCV Architecture (32-bit & 64-bit) area: Samples Samples area: Timer Timer area: West West utility
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants