ruyisdk / ruyi

RuyiSDK Package Manager
Apache License 2.0
14 stars 8 forks source link

RISC-V 开发板系统镜像安装工具,增加4款RISC-V开发板 #41

Closed xijing21 closed 7 months ago

xijing21 commented 8 months ago

扩展4款支持的开发板(全dd模式):矽速 Lichee RV 、 全志哪吒 D1、VisionFive 1 & 2;

KevinMX commented 8 months ago

D1 / Lichee RV & Nezha:

VisionFive:

VisionFive 2:

xen0n commented 8 months ago

Proposed device model slugs:

Is that okay?

xen0n commented 8 months ago

And -- is "Lichee RV" actually compatible enough with "Nezha D1" so that they'd be better represented as one model?

KevinMX commented 8 months ago

And -- is "Lichee RV" actually compatible enough with "Nezha D1" so that they'd be better represented as one model?

In openEuler RISC-V 23.03 they shares the same system image, but different DTBs. Although even with Nezha D1's DTB selected (by default), Lichee RV can still boot & operate without any issues. I think this is fine.

As in the bootloader / GRUB config of the image says:

menuentry 'openEuler riscv64 6.1.0 Nezha' {
    linux /vmlinuz-openEuler rw earlyprintk=sunxi-uart,0x02500000 console=ttyS0,115200 console=tty0 loglevel=8  root=/dev/mmcblk0p4 selinux=0 rhgb LANG=en_US.UTF-8
    devicetree /dtbs/allwinner/sun20i-d1-nezha.dtb
}

menuentry 'openEuler riscv64 6.1.0 Lichee RV Dock' {
    linux /vmlinuz-openEuler rw earlyprintk=sunxi-uart,0x02500000 console=ttyS0,115200 console=tty0 loglevel=8  root=/dev/mmcblk0p4 selinux=0 rhgb LANG=en_US.UTF-8
    devicetree /dtbs/allwinner/sun20i-d1-lichee-rv-dock.dtb
}

With that said, there are some differences between two boards. I'll do some testing later.

KevinMX commented 8 months ago

And -- is "Lichee RV" actually compatible enough with "Nezha D1" so that they'd be better represented as one model?

Booting as default (use AllWinner Nezha's dtb) on Lichee RV Dock:

[root@openeuler-riscv64 ~]# dmesg -Hw | grep eth
[  +0.008527] dwmac-sun8i 4500000.ethernet: IRQ eth_wake_irq not found
[  +0.006463] dwmac-sun8i 4500000.ethernet: IRQ eth_lpi not found
[  +0.006425] dwmac-sun8i 4500000.ethernet: PTP uses main clock
[  +0.005866] dwmac-sun8i 4500000.ethernet: Current syscon value is not the default 50006 (expect 0)
[  +0.009288] dwmac-sun8i 4500000.ethernet: No HW DMA feature register supported
[  +0.007334] dwmac-sun8i 4500000.ethernet: RX Checksum Offload Engine supported
[  +0.007297] dwmac-sun8i 4500000.ethernet: COE Type 2
[  +0.005026] dwmac-sun8i 4500000.ethernet: TX Checksum insertion supported
[  +0.006840] dwmac-sun8i 4500000.ethernet: Normal descriptors
[  +0.005708] dwmac-sun8i 4500000.ethernet: Chain mode enabled
[  +0.005725] dwmac-sun8i 4500000.ethernet: device MAC address 36:f7:d5:69:49:4b
[  +0.110815] dwmac-sun8i 4500000.ethernet: EMAC reset timeout
[  +0.005740] dwmac-sun8i 4500000.ethernet eth0: stmmac_dvr_remove: removing driver
[  +0.018064] dwmac-sun8i: probe of 4500000.ethernet failed with error -110

These two boards share the same SoC, only some peripherals are different. For example there's no ethernet PHY present on Lichee RV Dock. Other features will work just fine (e.g. WiFi, BT, USB, HDMI video out). You can say it's "compatible enough".

While it does work, there will be some differences. Users are recommended to change their GRUB defaults settings.

xen0n commented 8 months ago

they share the same system image, but different DTBs

So from a user's perspective, they are different models if the user wishes to make use of all features provided by the hardware, although a lot of code is shared.

xen0n commented 7 months ago

Board images added as of https://github.com/ruyisdk/packages-index/commit/aef81619f5d78092db1912ff05b44a891bb67d8d.