FreeBSD on VisionFive2 board with RISC-V RV64GC StarFive JH7110 SoC

Hello world :-)

I just got my VisionFive2 board (powerful rPI like with RISC-V CPU)! :-)

Here are the details: https://www.waveshare.com/wiki/VisionFive2

Onboard RV64GC ISA Quad-core 64-bit JH7110 SoC, operating frequency up to 1.5GHz, VisionFive 2 supports OpenCL 3.0, OpenGL ES 3.2, and Vulkan 1.2. It is available in 4GB/8GB LPDDR4 RAM options and an optional wireless module. Also, it has multiple onboard interfaces, including M.2 / CSI / DSI / HDMI / eMMC / USB 3.0 / 40PIN GPIO / RJ45 Gigabit Ethernet port / TF card slot, etc. Supports 4K@60fps and H264/H265 multi-stream video decoding, 1080p@30fps and H265 multi-stream video encoding. Onboard 40PIN GPIO header, VisionFive2 is compatible with Raspberry Pi series boards.

I got the variant with 8GB RAM, 2xGbit Ethernet, 4xUSB3.0 + 16GB eMMC module.

I have made some Debian Linux run on it quickly from SD.

Flashed the generic 13.1-RELEASE to the SD card from:


OpenSBI shows up, boots off the SD card, FreeBSD loader shows up, then kernel stops at CPU(0): Unknown Implementer Unknown Processor. Also RAM amount does not seem to be detected correctly (4GB instead 8GB).

Anyone else interested in running FreeBSD on that CPU / Board? :-)

Code:
Loading kernel...
/boot/kernel/kernel text=0x5f00e0 text=0x12c234 data=0xeb748 data=0xad4+0x1d097c syms=[0x8+0xc31b0+0x8+0xe43e2]
Loading configured modules...
can't find '/boot/entropy'
can't find '/etc/hostid'
/boot/kernel/umodem.ko text=0x2160 text=0x1230 data=0x6e8+0x10 syms=[0x8+0x6ff0+0x8+0xe1c]
loading required module 'ucom'
/boot/kernel/ucom.ko text=0x24df text=0x30c0 data=0x8a8+0x858 syms=[0x8+0x12e70+0x8+0x14af]

Hit [Enter] to boot immediately, or any other key for command prompt.
Booting [/boot/kernel/kernel]...
Using DTB provided by EFI at 0x47ef3000.
Kernel entry at 0xf660002e...
Kernel args: (null)
clk u5_dw_i2c_clk_core already disabled
clk u5_dw_i2c_clk_apb already disabled
---<<BOOT>>---
Copyright (c) 1992-2021 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 13.1-RELEASE releng/13.1-n250148-fc952ac2212 GENERIC riscv
FreeBSD clang version 13.0.0 (git@github.com:llvm/llvm-project.git llvmorg-13.0.0-0-gd7b669b3a303)
VT: init without driver.
SBI: OpenSBI v1.0
SBI Specification Version: 0.3
CPU(0): Unknown Implementer Unknown Processor
real memory  = 4294967296 (4096 MB)
avail memory = 4157841408 (3965 MB)
pbiS_ttarratpi_negr rCoPrU:  4h a(rhtar0:t  0tr)a
 handler failed (error -2)
sbi_trap_error: hart0: mcause=0x0000000000000005 mtval=0x0000000040059060
sbi_trap_error: hart0: mepc=0x00000000400047fc mstatus=0x0000000200001800
sbi_trap_error: hart0: ra=0x0000000040009972 sp=0x0000000040058f10
sbi_trap_error: hart0: gp=0x0000000000000000 tp=0x0000000040059000
sbi_trap_error: hart0: s0=0x0000000040058f20 s1=0x0000000040059000
sbi_trap_error: hart0: a0=0x0000000040059060 a1=0x0000000000000002
sbi_trap_error: hart0: a2=0x0000000000000000 a3=0x0000000000000000
sbi_trap_error: hart0: a4=0x0000000000000001 a5=0x0000000040059060
sbi_trap_error: hart0: a6=0x00000000400590a8 a7=0x0000000000000000
sbi_trap_error: hart0: s2=0x0000000040023188 s3=0x0000000000000000
sbi_trap_error: hart0: s4=0x0000000000000000 s5=0x0000000040027000
sbi_trap_error: hart0: s6=0x0000000040027020 s7=0x0000000000000000
sbi_trap_error: hart0: s8=0x000000000000001c s9=0x00000000400476a8
sbi_trap_error: hart0: s10=0x0000000000000000 s11=0x0000000000000000
sbi_trap_error: hart0: t0=0x0000000000000000 t1=0x0000000000000000
sbi_trap_error: hart0: t2=0x0000000000000000 t3=0x0000000000002000
sbi_trap_error: hart0: t4=0x0000000000000000 t5=0x0000000000000000
sbi_trap_error: hart0: t6=0x0000000000000000
 
No luck with FreeBSD-14.0-CURRENT-riscv-riscv64-GENERICSD-20230114-7583c633e0aa-260062.img either.


Code:
Loading kernel...
/boot/kernel/kernel text=0x5bb758 text=0x1782a4 data=0xf5d50 data=0x1f9c+0x2739ec 0x8+0x1f712b8+0x8+0xf5c9f/
Loading configured modules...
can't find '/boot/entropy'
/boot/kernel/umodem.ko text=0x2080 text=0x1290 data=0x6f0+0x4 0x8+0x71b8+0x8+0xdd5
loading required module 'ucom'
/boot/kernel/ucom.ko text=0x2618 text=0x2d18 data=0x960+0x858 0x8+0xfc48+0x8+0x14a5
can't find '/etc/hostid'

Hit [Enter] to boot immediately, or any other key for command prompt.
Booting [/boot/kernel/kernel]...
Using DTB provided by EFI at 0x47ef3000.
Kernel entry at 0xf680002e...
Kernel args: (null)
clk u5_dw_i2c_clk_core already disabled
clk u5_dw_i2c_clk_apb already disabled
---<<BOOT>>---
GDB: no debug ports present
KDB: debugger backends: ddb
KDB: current backend: ddb
Copyright (c) 1992-2023 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 14.0-CURRENT #0 main-n260062-7583c633e0aa: Sat Jan 14 01:35:46 UTC 2023
    root@releng1.nyi.freebsd.org:/usr/obj/usr/src/riscv.riscv64/sys/GENERIC riscv
FreeBSD clang version 14.0.5 (https://github.com/llvm/llvm-project.git llvmorg-14.0.5-0-gc12386ae247c)
WARNING: WITNESS option enabled, expect reduced performance.
VT: init without driver.
SBI: OpenSBI v1.0
SBI Specification Version: 0.3
CPU(0): Unknown Implementer Unknown Processor
real memory  = 4294967296 (4096 MB)
avail memory = 4122906624 (3931 MB)
hbiS_ttarartpi_negrr oCrP:U  h4a r(th0a:r tt r0a)p
 andler failed (error -2)
sbi_trap_error: hart0: mcause=0x0000000000000005 mtval=0x0000000040059060
sbi_trap_error: hart0: mepc=0x00000000400047fc mstatus=0x0000000200001800
sbi_trap_error: hart0: ra=0x0000000040009972 sp=0x0000000040058f10
sbi_trap_error: hart0: gp=0x0000000000000000 tp=0x0000000040059000
sbi_trap_error: hart0: s0=0x0000000040058f20 s1=0x0000000040059000
sbi_trap_error: hart0: a0=0x0000000040059060 a1=0x0000000000000002
sbi_trap_error: hart0: a2=0x0000000000000000 a3=0x0000000000000000
sbi_trap_error: hart0: a4=0x0000000000000001 a5=0x0000000040059060
sbi_trap_error: hart0: a6=0x00000000400590a8 a7=0x0000000000000000
sbi_trap_error: hart0: s2=0x0000000040023188 s3=0x0000000000000000
sbi_trap_error: hart0: s4=0x0000000000000000 s5=0x0000000040027000
sbi_trap_error: hart0: s6=0x0000000040027020 s7=0x0000000000000000
sbi_trap_error: hart0: s8=0x000000000000001c s9=0x00000000400476a8
sbi_trap_error: hart0: s10=0x0000000000000000 s11=0x0000000000000000
sbi_trap_error: hart0: t0=0x0000000000000000 t1=0x0000000000000000
sbi_trap_error: hart0: t2=0x0000000000000000 t3=0x0000000000002000
sbi_trap_error: hart0: t4=0x0000000000000000 t5=0x0000000000000000
sbi_trap_error: hart0: t6=0x0000000000000000
 
No drivers yet, loads forever, but this one works! :cool:


Code:
FreeBSD/riscv (generic) (rcons)

login: root
Password:
Jan 17 00:19:30 generic login[1352]: ROOT LOGIN (root) ON rcons
FreeBSD 14.0-CURRENT #0 main-n259905-231d75568f16: Sun Jan  1 07:57:08 UTC 2023     root@releng1.nyi.freebsd.org:/usr/obj/usr/src/riscv.riscv64/sys/GENERIC

Welcome to FreeBSD!

Release Notes, Errata: https://www.FreeBSD.org/releases/
Security Advisories:   https://www.FreeBSD.org/security/
FreeBSD Handbook:      https://www.FreeBSD.org/handbook/
FreeBSD FAQ:           https://www.FreeBSD.org/faq/
Questions List:        https://www.FreeBSD.org/lists/questions/
FreeBSD Forums:        https://forums.FreeBSD.org/

Documents installed with the system are in the /usr/local/share/doc/freebsd/
directory, or can be installed later with:  pkg install en-freebsd-doc
For other languages, replace "en" with a language code like de or fr.

Show the version of FreeBSD installed:  freebsd-version ; uname -a
Please include that output and any error messages when posting questions.
Introduction to manual pages:  man man
FreeBSD directory layout:      man hier

To change this login announcement, see motd(5).

root@generic:~ # uname -a
FreeBSD generic 14.0-CURRENT FreeBSD 14.0-CURRENT #0 main-n259905-231d75568f16: Sun Jan  1 07:57:08 UTC 2023     root@releng1.nyi.freebsd.org:/usr/obj/usr/srcv

root@generic:~ # dmesg | grep -i cpu
CPU(0): Unknown Implementer Unknown Processor
Starting CPU 1 (hart 2)
Starting CPU 2 (hart 3)
Starting CPU 3 (hart 4)
FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
cpulist0: <Open Firmware CPU Group> on ofwbus0
cpu0: <Open Firmware CPU> on cpulist0
cpu1: <Open Firmware CPU> on cpulist0
cpu2: <Open Firmware CPU> on cpulist0
cpu3: <Open Firmware CPU> on cpulist0
cpu4: <Open Firmware CPU> on cpulist0

root@generic:~ # sysctl hw
hw.machine: riscv
hw.ncpu: 4
hw.byteorder: 1234
hw.physmem: 3469545472
hw.usermem: 3406077952
hw.pagesize: 4096
hw.machine_arch: riscv64
hw.realmem: 4294967296
hw.busdma.total_bpages: 0
hw.bus.disable_failed_devices: 0
hw.bus.devctl_queue: 1000
hw.pagesizes: { 4096, 2097152 }
hw.availpages: 847057
hw.intr_epoch_batch: 1000
hw.intr_storm_threshold: 0
hw.watchdog.wd_last_u_secs: 0
hw.watchdog.wd_last_u: 0
hw.vtnet.lro_mbufq_depth: 0
hw.vtnet.lro_entry_count: 128
hw.vtnet.rx_process_limit: 1024
hw.vtnet.tso_maxlen: 65535
hw.vtnet.mq_max_pairs: 32
hw.vtnet.mq_disable: 0
hw.vtnet.lro_disable: 0
hw.vtnet.tso_disable: 0
hw.vtnet.fixup_needs_csum: 0
hw.vtnet.csum_disable: 0
hw.usb.umodem.debug: 0
hw.usb.ucom.cons_baud: 9600
hw.usb.ucom.cons_subunit: 0
hw.usb.ucom.cons_unit: -1
hw.usb.ucom.debug: 0
hw.usb.ucom.device_mode_console: 1
hw.usb.ucom.pps_mode: 0
hw.usb.ukbd.pollrate: 0
hw.usb.ukbd.no_leds: 0
hw.usb.ukbd.debug: 0
hw.usb.full_ddesc: 0
hw.usb.no_cs_fail: 0
hw.usb.proc.debug: 0
hw.usb.disable_port_power: 0
hw.usb.disable_enumeration: 0
hw.usb.power_timeout: 30
hw.usb.uhub.debug: 0
hw.usb.ugen.debug: 0
hw.usb.usb_lang_mask: 255
hw.usb.usb_lang_id: 9
hw.usb.template: 3
hw.usb.dev.debug: 0
hw.usb.timings.enum_nice_time: 16
hw.usb.timings.extra_power_up_time: 20
hw.usb.timings.resume_recovery: 50
hw.usb.timings.resume_wait: 50
hw.usb.timings.resume_delay: 250
hw.usb.timings.set_address_settle: 10
hw.usb.timings.port_resume_delay: 40
hw.usb.timings.port_powerup_delay: 300
hw.usb.timings.port_reset_recovery: 10
hw.usb.timings.port_root_reset_delay: 200
hw.usb.timings.port_reset_delay: 50
hw.usb.debug: 0
hw.usb.umass.throttle: 0
hw.usb.umass.debug: 0
hw.usb.no_shutdown_wait: 0
hw.usb.no_suspend_wait: 0
hw.usb.no_boot_wait: 0
hw.usb.ctrl.debug: 0
hw.usb.xhci.ctlstep: 0
hw.usb.xhci.dma32: 0
hw.usb.xhci.use_polling: 0
hw.usb.xhci.xhci_port_route: 0
hw.usb.xhci.debug: 0
hw.usb.xhci.dcepquirk: 0
hw.usb.xhci.ctlquirk: 1
hw.usb.xhci.streams: 0
hw.usb.uhci.loop: 0
hw.usb.uhci.debug: 0
hw.usb.ohci.debug: 0
hw.usb.ehci.lostintrbug: 0
hw.usb.ehci.iaadbug: 0
hw.usb.ehci.no_hs: 0
hw.usb.ehci.debug: 0
hw.broken_txfifo: 0
hw.pci.default_vgapci_unit: -1
hw.pci.clear_pcib: 0
hw.pci.clear_aer_on_attach: 0
hw.pci.enable_aspm: 1
hw.pci.enable_ari: 1
hw.pci.clear_buses: 0
hw.pci.clear_bars: 0
hw.pci.usb_early_takeover: 0
hw.pci.honor_msi_blacklist: 1
hw.pci.msix_rewrite_table: 0
hw.pci.enable_msix: 1
hw.pci.enable_msi: 1
hw.pci.do_power_suspend: 1
hw.pci.do_power_resume: 1
hw.pci.do_power_nodriver: 0
hw.pci.realloc_bars: 1
hw.pci.enable_io_modes: 1
hw.nvme.verbose_cmd_dump: 0
hw.nvme.use_nvd: 0
hw.nvd.delete_max: 1073741824
hw.kbd.keymap_restrict_change: 0
hw.hid.debug: 0
hw.fdt.serial-number: VF7110B1-2253-D008E000-00001727
hw.fdt.compatible: starfive,visionfive-v2 starfive,jh7110
hw.fdt.model: StarFive VisionFive V2
hw.clock.ac108_mclk.enable_cnt: 0
hw.clock.ac108_mclk.childrens:
hw.clock.ac108_mclk.parents:
hw.clock.ac108_mclk.parent:
hw.clock.ac108_mclk.frequency: 24000000
hw.clock.wm8960_mclk.enable_cnt: 0
hw.clock.wm8960_mclk.childrens:
hw.clock.wm8960_mclk.parents:
hw.clock.wm8960_mclk.parent:
hw.clock.wm8960_mclk.frequency: 24576000
hw.clock.mipitx_dphy_txbytehs.enable_cnt: 0
hw.clock.mipitx_dphy_txbytehs.childrens:
hw.clock.mipitx_dphy_txbytehs.parents:
hw.clock.mipitx_dphy_txbytehs.parent:
hw.clock.mipitx_dphy_txbytehs.frequency: 297000000
hw.clock.mipitx_dphy_rxesc.enable_cnt: 0
hw.clock.mipitx_dphy_rxesc.childrens:
hw.clock.mipitx_dphy_rxesc.parents:
hw.clock.mipitx_dphy_rxesc.parent:
hw.clock.mipitx_dphy_rxesc.frequency: 10000000
hw.clock.hdmitx0_pixelclk.enable_cnt: 0
hw.clock.hdmitx0_pixelclk.childrens:
hw.clock.hdmitx0_pixelclk.parents:
hw.clock.hdmitx0_pixelclk.parent:
hw.clock.hdmitx0_pixelclk.frequency: 297000000
hw.clock.clk_rtc.enable_cnt: 0
hw.clock.clk_rtc.childrens:
hw.clock.clk_rtc.parents:
hw.clock.clk_rtc.parent:
hw.clock.clk_rtc.frequency: 32768
hw.clock.gmac0_rgmii_rxin.enable_cnt: 0
hw.clock.gmac0_rgmii_rxin.childrens:
hw.clock.gmac0_rgmii_rxin.parents:
hw.clock.gmac0_rgmii_rxin.parent:
hw.clock.gmac0_rgmii_rxin.frequency: 125000000
hw.clock.gmac0_rmii_refin.enable_cnt: 0
hw.clock.gmac0_rmii_refin.childrens:
hw.clock.gmac0_rmii_refin.parents:
hw.clock.gmac0_rmii_refin.parent:
hw.clock.gmac0_rmii_refin.frequency: 50000000
hw.clock.bist_apb.enable_cnt: 0
hw.clock.bist_apb.childrens:
hw.clock.bist_apb.parents:
hw.clock.bist_apb.parent:
hw.clock.bist_apb.frequency: 50000000
hw.clock.jtag_tck_inner.enable_cnt: 0
hw.clock.jtag_tck_inner.childrens:
hw.clock.jtag_tck_inner.parents:
hw.clock.jtag_tck_inner.parent:
hw.clock.jtag_tck_inner.frequency: 50000000
hw.clock.mclk_ext.enable_cnt: 0
hw.clock.mclk_ext.childrens:
hw.clock.mclk_ext.parents:
hw.clock.mclk_ext.parent:
hw.clock.mclk_ext.frequency: 12288000
hw.clock.tdm_ext.enable_cnt: 0
hw.clock.tdm_ext.childrens:
hw.clock.tdm_ext.parents:
hw.clock.tdm_ext.parent:
hw.clock.tdm_ext.frequency: 49152000
hw.clock.i2srx_lrck_ext.enable_cnt: 0
hw.clock.i2srx_lrck_ext.childrens:
hw.clock.i2srx_lrck_ext.parents:
hw.clock.i2srx_lrck_ext.parent:
hw.clock.i2srx_lrck_ext.frequency: 192000
hw.clock.i2srx_bclk_ext.enable_cnt: 0
hw.clock.i2srx_bclk_ext.childrens:
hw.clock.i2srx_bclk_ext.parents:
hw.clock.i2srx_bclk_ext.parent:
hw.clock.i2srx_bclk_ext.frequency: 12288000
hw.clock.i2stx_lrck_ext.enable_cnt: 0
hw.clock.i2stx_lrck_ext.childrens:
hw.clock.i2stx_lrck_ext.parents:
hw.clock.i2stx_lrck_ext.parent:
hw.clock.i2stx_lrck_ext.frequency: 192000
hw.clock.i2stx_bclk_ext.enable_cnt: 0
hw.clock.i2stx_bclk_ext.childrens:
hw.clock.i2stx_bclk_ext.parents:
hw.clock.i2stx_bclk_ext.parent:
hw.clock.i2stx_bclk_ext.frequency: 12288000
hw.clock.gmac1_rgmii_rxin.enable_cnt: 0
hw.clock.gmac1_rgmii_rxin.childrens:
hw.clock.gmac1_rgmii_rxin.parents:
hw.clock.gmac1_rgmii_rxin.parent:
hw.clock.gmac1_rgmii_rxin.frequency: 125000000
hw.clock.gmac1_rmii_refin.enable_cnt: 0
hw.clock.gmac1_rmii_refin.childrens:
hw.clock.gmac1_rmii_refin.parents:
hw.clock.gmac1_rmii_refin.parent:
hw.clock.gmac1_rmii_refin.frequency: 50000000
hw.clock.clk-ext-camera.enable_cnt: 0
hw.clock.clk-ext-camera.childrens:
hw.clock.clk-ext-camera.parents:
hw.clock.clk-ext-camera.parent:
hw.clock.clk-ext-camera.frequency: 24000000
hw.clock.osc.enable_cnt: 0
hw.clock.osc.childrens:
hw.clock.osc.parents:
hw.clock.osc.parent:
hw.clock.osc.frequency: 24000000
 
Code:
...
pbiS_ttarratpi_negr rCoPrU:  4h a(rhtar0:t  0tr)a
 handler failed (error -2)
sbi_trap_error: hart0: mcause=0x0000000000000005 mtval=0x0000000040059060
sbi_trap_error: hart0: mepc=0x00000000400047fc mstatus=0x0000000200001800
sbi_trap_error: hart0: ra=0x0000000040009972 sp=0x0000000040058f10
sbi_trap_error: hart0: gp=0x0000000000000000 tp=0x0000000040059000
sbi_trap_error: hart0: s0=0x0000000040058f20 s1=0x0000000040059000
sbi_trap_error: hart0: a0=0x0000000040059060 a1=0x0000000000000002
sbi_trap_error: hart0: a2=0x0000000000000000 a3=0x0000000000000000
sbi_trap_error: hart0: a4=0x0000000000000001 a5=0x0000000040059060
sbi_trap_error: hart0: a6=0x00000000400590a8 a7=0x0000000000000000
sbi_trap_error: hart0: s2=0x0000000040023188 s3=0x0000000000000000
sbi_trap_error: hart0: s4=0x0000000000000000 s5=0x0000000040027000
sbi_trap_error: hart0: s6=0x0000000040027020 s7=0x0000000000000000
sbi_trap_error: hart0: s8=0x000000000000001c s9=0x00000000400476a8
sbi_trap_error: hart0: s10=0x0000000000000000 s11=0x0000000000000000
sbi_trap_error: hart0: t0=0x0000000000000000 t1=0x0000000000000000
sbi_trap_error: hart0: t2=0x0000000000000000 t3=0x0000000000002000
sbi_trap_error: hart0: t4=0x0000000000000000 t5=0x0000000000000000
sbi_trap_error: hart0: t6=0x0000000000000000
This is https://github.com/starfive-tech/VisionFive2/issues/33.
 
There is a thread on RV Space Forum about porting BSD to that board:

 
There is a thread on RV Space Forum about porting BSD to that board:

Has anyone tried this?
Maybe this will make it easier to run FreeBSD on VF2?

 
Has anyone tried this?
Maybe this will make it easier to run FreeBSD on VF2?

recently I managed to run freebsd on VF2, and problem occurs in new opensbi firmware.
I managed to solve it, and fork a new project in https://github.com/KyL0N/freebsd-vf2

Code:
root@generic:~ # uname -a
FreeBSD generic 14.0-STABLE FreeBSD 14.0-STABLE #0 stable/14-n266002-2ef9079ece5a: Sat Dec 16 05:16:50 UTC 2023     root@releng1.nyi.freebsd.org:/usr/obj/usr/src/riscv.riscv64/sys/GENERIC riscv
root@generic:~ # dmesg | grep -i cpu
Found 4 CPUs in the device tree
CPU 0  : Vendor=SiFive Core=6/7/P200/X200-Series Processor (Hart 1)
Starting CPU 1 (hart 2)
Starting CPU 2 (hart 3)
Starting CPU 3 (hart 4)
FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
CPU 1  : Vendor=SiFive Core=6/7/P200/X200-Series Processor (Hart 2)
CPU 2  : Vendor=SiFive Core=6/7/P200/X200-Series Processor (Hart 3)
CPU 3  : Vendor=SiFive Core=6/7/P200/X200-Series Processor (Hart 4)0
ULE: setup cpu 0 
ULE: setup cpu 1 
ULE: setup cpu 2 
ULE: setup cpu 3 
cpulist0:  on ofwbus0 
cpu0:  on cpulist0
cpu0: missing 'clock-frequency' property
riscv64_cpu0: register <0>
cpu1:  on cpulist0
cpu1: missing 'clock-frequency' property
riscv64_cpu1: register <1>
cpu2:  on cpulist0
cpu2: missing 'clock-frequency' property
riscv64_cpu2: register <2>
cpu3:  on cpulist0
cpu3: missing 'clock-frequency' property
riscv64_cpu3: register <3>
cpu4:  on cpulist0
cpu4: missing 'clock-frequency' property
Secondary CPU 3 fully online    
Secondary CPU 1 fully online    
Secondary CPU 2 fully online
root@generic:~ # sysctl hw
hw.machine: riscv
hw.ncpu: 4
hw.byteorder: 1234
hw.physmem: 3434131456
hw.usermem: 3373068288
hw.pagesize: 4096
hw.machine_arch: riscv64
hw.realmem: 4294967296
hw.sdhci.quirk_set: 0
hw.sdhci.quirk_clear: 0
hw.sdhci.debug: 0
hw.mmc.debug: 0  
hw.busdma.total_bpages: 0
hw.bus.disable_failed_devices: 0
hw.bus.devctl_queue: 1000
hw.pagesizes: { 4096, 2097152 } 
hw.availpages: 838411
hw.intr_epoch_batch: 1000
hw.intr_storm_threshold: 0
hw.watchdog.wd_last_u_secs: 0   
hw.watchdog.wd_last_u: 0
hw.vtnet.lro_mbufq_depth: 0
hw.vtnet.lro_entry_count: 128   
hw.vtnet.rx_process_limit: 1024 
hw.vtnet.tso_maxlen: 65535
hw.vtnet.mq_max_pairs: 32
hw.vtnet.mq_disable: 0
hw.vtnet.lro_disable: 0
hw.vtnet.tso_disable: 0
hw.vtnet.fixup_needs_csum: 0    
hw.vtnet.csum_disable: 0
hw.usb.umodem.debug: 0
hw.usb.ucom.cons_baud: 115200   
hw.usb.ucom.cons_subunit: 0
hw.usb.ucom.cons_unit: -1
hw.usb.ucom.debug: 0
hw.usb.ucom.device_mode_console: 1
hw.usb.ucom.pps_mode: 0
hw.usb.ukbd.pollrate: 0
hw.usb.ukbd.no_leds: 0
hw.usb.ukbd.debug: 0
hw.usb.full_ddesc: 0
hw.usb.no_cs_fail: 0
hw.usb.proc.debug: 0
hw.usb.disable_port_power: 0    
hw.usb.disable_enumeration: 0   
hw.usb.power_timeout: 30
hw.usb.uhub.debug: 0
hw.usb.ugen.debug: 0
hw.usb.usb_lang_mask: 255
hw.usb.usb_lang_id: 9
hw.usb.template: 3
hw.usb.dev.debug: 0
hw.usb.timings.enum_nice_time: 16
hw.usb.timings.extra_power_up_time: 20
hw.usb.timings.resume_recovery: 50
hw.usb.timings.resume_wait: 50  
hw.usb.timings.resume_delay: 250
hw.usb.timings.set_address_settle: 10
hw.usb.timings.port_resume_delay: 40
hw.usb.timings.port_powerup_delay: 300
hw.usb.timings.port_reset_recovery: 10
hw.usb.timings.port_root_reset_delay: 200
hw.usb.timings.port_reset_delay: 50
hw.usb.debug: 0  
hw.usb.umass.throttle: 0
hw.usb.umass.debug: 0
hw.usb.no_shutdown_wait: 0
hw.usb.no_suspend_wait: 0
hw.usb.no_boot_wait: 0
hw.usb.ctrl.debug: 0
hw.usb.xhci.ctlstep: 0
hw.usb.xhci.dma32: 0
hw.usb.xhci.use_polling: 0
hw.usb.xhci.xhci_port_route: 0  
hw.usb.xhci.debug: 0
hw.usb.xhci.dcepquirk: 0
hw.usb.xhci.ctlquirk: 1
hw.usb.xhci.streams: 0
hw.usb.uhci.loop: 0
hw.usb.uhci.debug: 0
hw.usb.ohci.debug: 0 
hw.usb.ehci.lostintrbug: 0
hw.usb.ehci.iaadbug: 0
hw.usb.ehci.no_hs: 0
hw.usb.ehci.debug: 0
hw.broken_txfifo: 0
hw.pci.default_vgapci_unit: -1  
hw.pci.clear_pcib: 0
hw.pci.enable_mps_tune: 1
hw.pci.clear_aer_on_attach: 0   
hw.pci.enable_aspm: 1
hw.pci.enable_ari: 1
hw.pci.clear_buses: 0
hw.pci.clear_bars: 0
hw.pci.usb_early_takeover: 0    
hw.pci.honor_msi_blacklist: 1   
hw.pci.msix_rewrite_table: 0    
hw.pci.enable_msix: 1
hw.pci.enable_msi: 1
hw.pci.do_power_suspend: 1
hw.pci.do_power_resume: 1
hw.pci.do_power_nodriver: 0
hw.pci.realloc_bars: 1
hw.pci.enable_io_modes: 1
hw.nvme.verbose_cmd_dump: 0
hw.nvme.use_nvd: 0
hw.nvd.delete_max: 1073741824   
hw.kbd.keymap_restrict_change: 0
hw.hid.debug: 0  
hw.fdt.serial-number: VF7110B1-2310-D004E000-00002844
hw.fdt.compatible: starfive,visionfive-2-v1.3b starfive,jh7110
hw.fdt.model: StarFive VisionFive 2 v1.3B
hw.clock.clk_ext_camera.enable_cnt: 0
hw.clock.clk_ext_camera.childrens:
hw.clock.clk_ext_camera.parents:
hw.clock.clk_ext_camera.parent: 
hw.clock.clk_ext_camera.frequency: 24000000    
hw.clock.tdm_ext.enable_cnt: 0  
hw.clock.tdm_ext.childrens:     
hw.clock.tdm_ext.parents:
hw.clock.tdm_ext.parent:
hw.clock.tdm_ext.frequency: 49152000
hw.clock.rtc_osc.enable_cnt: 0  
hw.clock.rtc_osc.childrens:     
hw.clock.rtc_osc.parents:
hw.clock.rtc_osc.parent:
hw.clock.rtc_osc.frequency: 32768
hw.clock.osc.enable_cnt: 0
hw.clock.osc.childrens:
hw.clock.osc.parents:
hw.clock.osc.parent:
hw.clock.osc.frequency: 24000000
hw.clock.mclk_ext.enable_cnt: 0 
hw.clock.mclk_ext.childrens:    
hw.clock.mclk_ext.parents:
hw.clock.mclk_ext.parent:
hw.clock.mclk_ext.frequency: 12288000
hw.clock.i2stx_lrck_ext.enable_cnt: 0
hw.clock.i2stx_lrck_ext.childrens:
hw.clock.i2stx_lrck_ext.parents:
hw.clock.i2stx_lrck_ext.parent: 
hw.clock.i2stx_lrck_ext.frequency: 192000
hw.clock.i2stx_bclk_ext.enable_cnt: 0
hw.clock.i2stx_bclk_ext.childrens:
hw.clock.i2stx_bclk_ext.parents:
hw.clock.i2stx_bclk_ext.parent: 
hw.clock.i2stx_bclk_ext.frequency: 12288000    
hw.clock.i2srx_lrck_ext.enable_cnt: 0
hw.clock.i2srx_lrck_ext.childrens:
hw.clock.i2srx_lrck_ext.parents:
hw.clock.i2srx_lrck_ext.parent: 
hw.clock.i2srx_lrck_ext.frequency: 192000
hw.clock.i2srx_bclk_ext.enable_cnt: 0
hw.clock.i2srx_bclk_ext.childrens:
hw.clock.i2srx_bclk_ext.parents:
hw.clock.i2srx_bclk_ext.parent: 
hw.clock.i2srx_bclk_ext.frequency: 12288000    
hw.clock.hdmitx0_pixelclk.enable_cnt: 0
hw.clock.hdmitx0_pixelclk.childrens:
hw.clock.hdmitx0_pixelclk.parents:
hw.clock.hdmitx0_pixelclk.parent:
hw.clock.hdmitx0_pixelclk.frequency: 297000000 
hw.clock.gmac1_rmii_refin.enable_cnt: 0
hw.clock.gmac1_rmii_refin.childrens:
hw.clock.gmac1_rmii_refin.parents:
hw.clock.gmac1_rmii_refin.parent:
hw.clock.gmac1_rmii_refin.frequency: 50000000  
hw.clock.gmac1_rgmii_rxin.enable_cnt: 0
hw.clock.gmac1_rgmii_rxin.childrens:
hw.clock.gmac1_rgmii_rxin.parents:
hw.clock.gmac1_rgmii_rxin.parent:
hw.clock.gmac1_rgmii_rxin.frequency: 125000000 
hw.clock.gmac0_rmii_refin.enable_cnt: 0
hw.clock.gmac0_rmii_refin.childrens:
hw.clock.gmac0_rmii_refin.parents:
hw.clock.gmac0_rmii_refin.parent:
hw.clock.gmac0_rmii_refin.frequency: 50000000  
hw.clock.gmac0_rgmii_rxin.enable_cnt: 0
hw.clock.gmac0_rgmii_rxin.childrens:
hw.clock.gmac0_rgmii_rxin.parents:
hw.clock.gmac0_rgmii_rxin.parent:
hw.clock.gmac0_rgmii_rxin.frequency: 125000000 
hw.clock.dvp_clk.enable_cnt: 0  
hw.clock.dvp_clk.childrens:     
hw.clock.dvp_clk.parents:
hw.clock.dvp_clk.parent:
hw.clock.dvp_clk.frequency: 74250000
 
This sounds promising, I just ordered the board and will be happy to run FBSD with the provided patches. What is your current resume of this board? Do you still use it, any disadvantages (especially compared to a Raspberry)?

Maybe someone can share a usable image including the drivers as a blue print image which we can use as a base on the SD.
 
Alright, I created an image, unfortunately fbsd is not the way to go here right now. I made some collections on my site if someone is interested and some benchmark tests. The performance is on a Pi3 level, sometimes a little bit better but don’t expect too much. However, it’s still enough for me that I took the opportunity to let it serve my primary Webserver (only static content) and replaced two of my auth NS, as well as two ntp. Low power things are pretty cool for this board. I have 5 boards (4 in production in Debian) and one at home for playing around… hope we can improve the support of fbsd on this board quickly - LicheePi and VF2 are probably the most affordable and common boards for nerds like us :)
 
Back
Top