Good suggestion, updated the post. That’s not unique to my kernel; it’s due to the Ubuntu config and would happen with any kernel update, even ones from Canonical.
Absolutely, sorry for not making that clear. What different here is that you made it so easy to change the kernel
Note, everything is working fine now and I’m not a difference in my compute intensive benchmark so the L2 must be working despite the missing CONFIG_SIFIVE_CCACHE.
ADD: greif, I am seeing this
[ 76.697216] nvme nvme0: I/O 896 QID 3 timeout, completion polled [ 107.417135] nvme nvme0: I/O 896 QID 2 timeout, completion polled [ 107.417238] nvme nvme0: I/O 897 QID 3 timeout, completion polled
which I vaguely recall has an issue on github. This is an issue with kernel 6.3 + the patches that doesn’t exist in 5.10, so if you depend on NVMe I’d strong advise waiting for now.
I don’t have an NVMe SSD in my board so this hasn’t come up for me before. If I can find one in my office I’ll take a look at the problem. The cache config was added to the build and pushed a few hours ago so the benchmark you’re running may actually have the cache enabled.
No, I used a kernel from before your fix. I just pulled the latest kernel too.
OT: Unfortunately updating the kernel breaks perf (nothing specific to your work). It’s not a big deal as I can just build it myself, but if it’s a easy fix you might throw it in there. Here’s what is reported:
WARNING: perf not found for kernel 6.3.0+ You may need to install the following packages for this specific kernel: linux-tools-6.3.0+-6.3.0+ linux-cloud-tools-6.3.0+-6.3.0+ You may also want to install one of the following packages to keep up to date: linux-tools-6.3.0+ linux-cloud-tools-6.3.0+
If I read correctly, it looks like I just needed to enable CONFIG_PROFILING as the perf options were already on, but the profiling dependency was not. I will kick off another build.
I was not able to repeat your success from a fresh image flashed to the wiped new 128GB sdcard. I don’t say this lightly either. I tried 3 times with the same results starting with a fresh image of starfive-jh7110-VF2-SD-wayland.img that was booting with the pink desktop.
I’ve tried your steps 1 to 5 and the boot process seems to freeze. My vf2 debian desktop from the march 2023 image doesn’t display the pink login after power up. I’ve tried it just with the SBC to the hd monitor. I’ve tried using 2 hdmi cables to one hd monitor. One for the SBC and the other for my fedora silverblue x86_64 session during VF2 power on. Same result with the same output as given below with last lines I see as “deferred probe pending”.
sudo minicom -D /dev/ttyUSB0 -b 115200 [sudo] password for davidm: Welcome to minicom 2.8 OPTIONS: I18n Compiled on Jan 19 2023, 00:00:00. Port /dev/ttyUSB0, 20:38:53 Press CTRL-A Z for help on special keys U-Boot SPL 2021.10 (Mar 24 2023 - 01:42:56 +0800) DDR version: dc2e84f0. Trying to boot from SPI OpenSBI v1.2 ____ _____ ____ _____ / __ \ / ____| _ \_ _| | | | |_ __ ___ _ __ | (___ | |_) || | | | | | '_ \ / _ \ '_ \ \___ \| _ < | | | |__| | |_) | __/ | | |____) | |_) || |_ \____/| .__/ \___|_| |_|_____/|___/_____| | | |_| Platform Name : StarFive VisionFive V2 Platform Features : medeleg Platform HART Count : 5 Platform IPI Device : aclint-mswi Platform Timer Device : aclint-mtimer @ 4000000Hz Platform Console Device : uart8250 Platform HSM Device : --- Platform PMU Device : --- Platform Reboot Device : pm-reset Platform Shutdown Device : pm-reset Platform Suspend Device : --- Firmware Base : 0x40000000 Firmware Size : 392 KB Firmware RW Offset : 0x40000 Runtime SBI Version : 1.0 Domain0 Name : root Domain0 Boot HART : 1 Domain0 HARTs : 0*,1*,2*,3*,4* Domain0 Region00 : 0x0000000002000000-0x000000000200ffff M: (I,R,W) S/U: () Domain0 Region01 : 0x0000000040000000-0x000000004003ffff M: (R,X) S/U: () Domain0 Region02 : 0x0000000040040000-0x000000004007ffff M: (R,W) S/U: () Domain0 Region03 : 0x0000000000000000-0xffffffffffffffff M: (R,W,X) S/U: (R,W,X) Domain0 Next Address : 0x0000000040200000 Domain0 Next Arg1 : 0x0000000042200000 Domain0 Next Mode : S-mode Domain0 SysReset : yes Domain0 SysSuspend : yes Boot HART ID : 1 Boot HART Domain : root Boot HART Priv Version : v1.11 Boot HART Base ISA : rv64imafdcbx Boot HART ISA Extensions : none Boot HART PMP Count : 8 Boot HART PMP Granularity : 4096 Boot HART PMP Address Bits: 34 Boot HART MHPM Count : 2 Boot HART MIDELEG : 0x0000000000000222 Boot HART MEDELEG : 0x000000000000b109 U-Boot 2021.10 (Mar 24 2023 - 01:42:56 +0800), Build: jenkins-github_visionfive2-13 CPU: rv64imacu Model: StarFive VisionFive V2 DRAM: 8 GiB MMC: sdio0@16010000: 0, sdio1@16020000: 1 Loading Environment from SPIFlash... SF: Detected gd25lq128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB *** Warning - bad CRC, using default environment StarFive EEPROM format v2 --------EEPROM INFO-------- Vendor : StarFive Technology Co., Ltd. Product full SN: VF7110B1-2253-D008E000-00002621 data version: 0x2 PCB revision: 0xb2 BOM revision: A Ethernet MAC0 address: 6c:cf:39:00:36:43 Ethernet MAC1 address: 6c:cf:39:00:36:44 --------EEPROM INFO-------- In: serial Out: serial Err: serial Model: StarFive VisionFive V2 Net: eth0: ethernet@16030000, eth1: ethernet@16040000 switch to partitions #0, OK mmc1 is current device found device 1 bootmode flash device 1 385 bytes read in 4 ms (93.8 KiB/s) Importing environment from mmc1 ... Can't set block device Hit any key to stop autoboot: 0 48366 bytes read in 10 ms (4.6 MiB/s) 48366 bytes written in 10 ms (4.6 MiB/s) Retrieving file: /extlinux/extlinux.conf 1385 bytes read in 7 ms (192.4 KiB/s) U-Boot menu 1: Debian GNU/Linux bookworm/sid 6.3.0+ 2: Debian GNU/Linux bookworm/sid 6.3.0+ (rescue target) 3: Debian GNU/Linux bookworm/sid 5.15.0-starfive 4: Debian GNU/Linux bookworm/sid 5.15.0-starfive (rescue target) Enter choice: 1: Debian GNU/Linux bookworm/sid 6.3.0+ Retrieving file: /initrd.img-6.3.0+ 10459640 bytes read in 457 ms (21.8 MiB/s) Retrieving file: /vmlinuz-6.3.0+ 9409550 bytes read in 412 ms (21.8 MiB/s) append: root=/dev/mmcblk1p4 root=/dev/mmcblk1p4 rw console=tty0 console=ttyS0,115200 earlycon rootwait stmmaceth=chain_mode:1 selinux=0 Retrieving file: /dtbs/starfive/jh7110-visionfive-v2.dtb 48366 bytes read in 9 ms (5.1 MiB/s) Uncompressing Kernel Image Moving Image from 0x44000000 to 0x40200000, end=4198e000 ## Flattened Device Tree blob at 48000000 Booting using the fdt blob at 0x48000000 Using Device Tree in place at 0000000048000000, end 000000004800eced Starting kernel ... clk u2_dw_i2c_clk_core already disabled clk u2_dw_i2c_clk_apb already disabled clk u5_dw_i2c_clk_core already disabled clk u5_dw_i2c_clk_apb already disabled [ 0.000000] Linux version 6.3.0+ (root@9164ec80e2e5) (riscv64-linux-gnu-gcc (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2) #36 SMP Sat May 6 21:03:11 UTC 2023 [ 0.000000] Machine model: StarFive VisionFive V2 [ 0.000000] earlycon: uart0 at MMIO32 0x0000000010000000 (options '115200') [ 0.000000] printk: bootconsole [uart0] enabled [ 0.000000] efi: UEFI not found. [ 0.000000] Reserved memory: created CMA memory pool at 0x0000000080000000, size 512 MiB [ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool [ 0.000000] OF: reserved mem: 0x0000000080000000..0x000000009fffffff (524288 KiB) map reusable linux,cma [ 0.000000] OF: reserved mem: 0x0000000040000000..0x000000004007ffff (512 KiB) nomap non-reusable opensbi@40000000 [ 0.000000] OF: reserved mem: 0x00000000c0110000..0x00000000c01fffff (960 KiB) nomap non-reusable e24@c0000000 [ 0.000000] OF: reserved mem: 0x00000000f0000000..0x00000000f1fffffe (32767 KiB) map non-reusable xrpbuffer@f0000000 [ 0.000000] Zone ranges: [ 0.000000] DMA32 [mem 0x0000000040000000-0x00000000ffffffff] [ 0.000000] Normal [mem 0x0000000100000000-0x000000023fffffff] [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000040000000-0x000000004007ffff] [ 0.000000] node 0: [mem 0x0000000040080000-0x00000000c010ffff] [ 0.000000] node 0: [mem 0x00000000c0110000-0x00000000c01fffff] [ 0.000000] node 0: [mem 0x00000000c0200000-0x000000023fffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x000000023fffffff] [ 0.000000] SBI specification v1.0 detected [ 0.000000] SBI implementation ID=0x1 Version=0x10002 [ 0.000000] SBI TIME extension detected [ 0.000000] SBI IPI extension detected [ 0.000000] SBI RFENCE extension detected [ 0.000000] SBI SRST extension detected [ 0.000000] SBI HSM extension detected [ 0.000000] CPU with hartid=0 is not available [ 0.000000] CPU with hartid=0 is not available [ 0.000000] CPU with hartid=0 is not available [ 0.000000] CPU with hartid=0 is not available [ 0.000000] riscv: base ISA extensions acdfim [ 0.000000] riscv: ELF capabilities acdfim [ 0.000000] percpu: Embedded 19 pages/cpu s38776 r8192 d30856 u77824 [ 0.000000] Kernel command line: root=/dev/mmcblk1p4 root=/dev/mmcblk1p4 rw console=tty0 console=ttyS0,115200 earlycon rootwait stmmaceth=chain_mode:1 selinux=0 [ 0.000000] Unknown kernel command line parameters "selinux=0", will be passed to user space. [ 0.000000] Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes, linear) [ 0.000000] Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes, linear) [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 2064384 [ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off [ 0.000000] software IO TLB: area num 4. [ 0.000000] software IO TLB: mapped [mem 0x00000000fbfff000-0x00000000fffff000] (64MB) [ 0.000000] Memory: 7568604K/8388608K available (11762K kernel code, 5034K rwdata, 4096K rodata, 2199K init, 498K bss, 295716K reserved, 524288K cma-reserved) [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 [ 0.000000] rcu: Hierarchical RCU implementation. [ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=64 to nr_cpu_ids=4. [ 0.000000] rcu: RCU debug extended QS entry/exit. [ 0.000000] Tracing variant of Tasks RCU enabled. [ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies. [ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4 [ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0 [ 0.000000] CPU with hartid=0 is not available [ 0.000000] riscv-intc: unable to find hart id for /cpus/cpu@0/interrupt-controller [ 0.000000] riscv-intc: 64 local interrupts mapped [ 0.000000] plic: plic@c000000: mapped 136 interrupts with 4 handlers for 9 contexts. [ 0.000000] riscv: providing IPIs using SBI IPI extension [ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention. [ 0.000000] riscv-timer: riscv_timer_init_dt: Registering clocksource cpuid  hartid  [ 0.000000] clocksource: riscv_clocksource: mask: 0xffffffffffffffff max_cycles: 0x1d854df40, max_idle_ns: 881590404240 ns [ 0.000001] sched_clock: 64 bits at 4MHz, resolution 250ns, wraps every 2199023255500ns [ 0.009041] Console: colour dummy device 80x25 [ 0.013920] printk: console [tty0] enabled [ 0.019059] Calibrating delay loop (skipped), value calculated using timer frequency.. 8.00 BogoMIPS (lpj=40000) [ 0.030255] pid_max: default: 32768 minimum: 301 [ 0.035414] LSM: initializing lsm=capability,apparmor,integrity [ 0.042028] AppArmor: AppArmor initialized [ 0.046734] Mount-cache hash table entries: 16384 (order: 5, 131072 bytes, linear) [ 0.055232] Mountpoint-cache hash table entries: 16384 (order: 5, 131072 bytes, linear) [ 0.066377] cblist_init_generic: Setting adjustable number of callback queues. [ 0.074327] cblist_init_generic: Setting shift to 2 and lim to 1. [ 0.081150] riscv: ELF compat mode unsupported [ 0.081159] ASID allocator disabled (0 bits) [ 0.090867] rcu: Hierarchical SRCU implementation. [ 0.096143] rcu: Max phase no-delay instances is 1000. [ 0.102139] EFI services will not be available. [ 0.107523] smp: Bringing up secondary CPUs ... [ 0.114744] smp: Brought up 1 node, 4 CPUs [ 0.121397] devtmpfs: initialized [ 0.134327] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns [ 0.145164] futex hash table entries: 1024 (order: 4, 65536 bytes, linear) [ 0.167164] pinctrl core: initialized pinctrl subsystem [ 0.174068] NET: Registered PF_NETLINK/PF_ROUTE protocol family [ 0.181310] DMA: preallocated 1024 KiB GFP_KERNEL pool for atomic allocations [ 0.189250] DMA: preallocated 1024 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations [ 0.198118] audit: initializing netlink subsys (disabled) [ 0.204229] audit: type=2000 audit(0.150:1): state=initialized audit_enabled=0 res=1 [ 0.204548] thermal_sys: Registered thermal governor 'step_wise' [ 0.212802] cpuidle: using governor menu [ 0.230705] platform soc: Fixed dependency cycle(s) with /soc/plic@c000000 [ 0.248703] platform soc:dsi-output: Fixed dependency cycle(s) with /soc/dc8200@29400000/port/endpoint@2 [ 0.259470] platform 295d0000.mipi: Fixed dependency cycle(s) with /soc/dsi-output/ports/port@1/endpoint [ 0.270214] platform 29590000.hdmi: Fixed dependency cycle(s) with /soc/dc8200@29400000/port/endpoint@1 [ 0.283036] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages [ 0.290498] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page [ 0.297398] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages [ 0.304853] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page [ 0.481898] raid6: int64x8 gen() 588 MB/s [ 0.652014] raid6: int64x4 gen() 957 MB/s [ 0.822127] raid6: int64x2 gen() 927 MB/s [ 0.992279] raid6: int64x1 gen() 743 MB/s [ 0.996971] raid6: using algorithm int64x4 gen() 957 MB/s [ 1.173016] raid6: .... xor() 536 MB/s, rmw enabled [ 1.178374] raid6: using intx1 recovery algorithm [ 1.184013] SCSI subsystem initialized [ 1.188467] usbcore: registered new interface driver usbfs [ 1.194553] usbcore: registered new interface driver hub [ 1.200418] usbcore: registered new device driver usb [ 1.206318] mc: Linux media interface: v0.10 [ 1.211042] videodev: Linux video capture interface: v2.00 [ 1.217302] Advanced Linux Sound Architecture Driver Initialized. [ 1.224541] Bluetooth: Core ver 2.22 [ 1.228515] NET: Registered PF_BLUETOOTH protocol family [ 1.234349] Bluetooth: HCI device and connection manager initialized [ 1.241342] Bluetooth: HCI socket layer initialized [ 1.246702] Bluetooth: L2CAP socket layer initialized [ 1.252271] Bluetooth: SCO socket layer initialized [ 1.257945] vgaarb: loaded [ 1.261242] clocksource: Switched to clocksource riscv_clocksource [ 1.268892] AppArmor: AppArmor Filesystem Enabled [ 1.282135] NET: Registered PF_INET protocol family [ 1.288483] IP idents hash table entries: 131072 (order: 8, 1048576 bytes, linear) [ 1.308252] tcp_listen_portaddr_hash hash table entries: 4096 (order: 5, 131072 bytes, linear) [ 1.317918] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear) [ 1.326460] TCP established hash table entries: 65536 (order: 7, 524288 bytes, linear) [ 1.336045] TCP bind hash table entries: 65536 (order: 10, 4194304 bytes, linear) [ 1.351519] TCP: Hash tables configured (established 65536 bind 65536) [ 1.358989] UDP hash table entries: 4096 (order: 6, 393216 bytes, linear) [ 1.367018] UDP-Lite hash table entries: 4096 (order: 6, 393216 bytes, linear) [ 1.375751] NET: Registered PF_UNIX/PF_LOCAL protocol family [ 1.382618] RPC: Registered named UNIX socket transport module. [ 1.389125] RPC: Registered udp transport module. [ 1.394314] RPC: Registered tcp transport module. [ 1.399479] RPC: Registered tcp NFSv4.1 backchannel transport module. [ 1.407845] PCI: CLS 0 bytes, default 64 [ 1.412388] Unpacking initramfs... [ 1.412942] Initialise system trusted keyrings [ 1.421591] workingset: timestamp_bits=46 max_order=21 bucket_order=0 [ 1.429039] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 1.435917] NFS: Registering the id_resolver key type [ 1.441542] Key type id_resolver registered [ 1.446147] Key type id_legacy registered [ 1.450599] nfs4filelayout_init: NFSv4 File Layout Driver Registering... [ 1.458012] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering... [ 1.466229] ntfs: driver 2.1.32 [Flags: R/W]. [ 1.471102] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc. [ 1.478196] fuse: init (API version 7.38) [ 1.521387] NET: Registered PF_ALG protocol family [ 1.526706] xor: measuring software checksum speed [ 1.536227] 8regs : 2344 MB/sec [ 1.545262] 8regs_prefetch : 2335 MB/sec [ 1.554288] 32regs : 2344 MB/sec [ 1.563331] 32regs_prefetch : 2335 MB/sec [ 1.568130] xor: using function: 32regs (2344 MB/sec) [ 1.573723] Key type asymmetric registered [ 1.578232] Asymmetric key parser 'x509' registered [ 1.583716] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 249) [ 1.592141] io scheduler mq-deadline registered [ 1.597135] io scheduler kyber registered [ 1.607835] CCACHE: DataError @ 0x00000000.08040140 [ 1.613347] CCACHE: DataFail @ 0x00000000.0804005B [ 1.618723] CCACHE: 8 banks, 16 ways, sets/bank=256, bytes/block=64 [ 1.625661] CCACHE: Index of the largest way enabled: 15 [ 1.674636] Serial: 8250/16550 driver, 6 ports, IRQ sharing disabled [ 1.691383] loop: module loaded [ 1.698390] CAN device driver interface [ 1.703863] usbcore: registered new interface driver uas [ 1.709745] usbcore: registered new interface driver usb-storage [ 1.716750] usbcore: registered new interface driver uvcvideo [ 1.724223] softdog: initialized. soft_noboot=0 soft_margin=60 sec soft_panic=0 (nowayout=0) [ 1.733533] softdog: soft_reboot_cmd=<not set> soft_active_on_boot=0 [ 1.742076] device-mapper: ioctl: 4.48.0-ioctl (2023-03-01) initialised: email@example.com [ 1.751686] Bluetooth: HCI UART driver ver 2.3 [ 1.756584] Bluetooth: HCI UART protocol H4 registered [ 1.763019] sdhci: Secure Digital Host Controller Interface driver [ 1.769819] sdhci: Copyright(c) Pierre Ossman [ 1.774677] Synopsys Designware Multimedia Card Interface Driver [ 1.781643] sdhci-pltfm: SDHCI platform and OF driver helper [ 1.788387] usbcore: registered new interface driver usbhid [ 1.794538] usbhid: USB HID core driver [ 1.798979] riscv-pmu-sbi: SBI PMU extension is available [ 1.804968] riscv-pmu-sbi: 16 firmware and 4 hardware counters [ 1.811411] riscv-pmu-sbi: Perf sampling/filtering is not supported as sscof extension is not available [ 1.825551] usbcore: registered new interface driver snd-usb-audio [ 1.839531] xt_time: kernel timezone is -0000 [ 1.844384] IPVS: Registered protocols (TCP, UDP) [ 1.849602] IPVS: Connection hash table configured (size=4096, memory=32Kbytes) [ 1.857908] IPVS: ipvs loaded. [ 1.861306] IPVS: [rr] scheduler registered. [ 1.866339] NET: Registered PF_INET6 protocol family [ 1.873132] Segment Routing with IPv6 [ 1.877236] In-situ OAM (IOAM) with IPv6 [ 1.881747] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver [ 1.888896] NET: Registered PF_PACKET protocol family [ 1.894553] Bridge firewalling registered [ 1.898963] can: controller area network core [ 1.903887] NET: Registered PF_CAN protocol family [ 1.909164] can: raw protocol [ 1.912460] can: broadcast manager protocol [ 1.917075] can: netlink gateway - max_hops=1 [ 1.922178] Bluetooth: RFCOMM TTY layer initialized [ 1.927561] Bluetooth: RFCOMM socket layer initialized [ 1.933257] Bluetooth: RFCOMM ver 1.11 [ 1.937397] Bluetooth: BNEP (Ethernet Emulation) ver 1.3 [ 1.943259] Bluetooth: BNEP filters: protocol multicast [ 1.949018] Bluetooth: BNEP socket layer initialized [ 1.954587] 8021q: 802.1Q VLAN Support v1.8 [ 1.959224] lib80211: common routines for IEEE802.11 drivers [ 1.965574] 9pnet: Installing 9P2000 support [ 1.970368] Key type dns_resolver registered [ 1.990970] Loading compiled-in X.509 certificates [ 2.006402] Btrfs loaded, zoned=no, fsverity=no [ 2.011568] AppArmor: AppArmor sha1 policy hashing enabled [ 2.022143] cfg80211: Loading compiled-in X.509 certificates for regulatory database [ 2.305914] Freeing initrd memory: 10212K [ 2.337253] Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7' [ 2.343524] clk: Disabling unused clocks [ 2.347851] ALSA device list: [ 2.351110] No soundcards found. [ 2.357202] cfg80211: loaded regulatory.db is malformed or signature is missing/invalid [ 2.363230] Freeing unused kernel image (initmem) memory: 2196K [ 2.421297] Run /init as init process [ 13.363165] platform 10030000.i2c: deferred probe pending [ 13.369108] platform 10050000.i2c: deferred probe pending [ 13.375057] platform 12050000.i2c: deferred probe pending [ 13.380986] platform 12060000.i2c: deferred probe pending [ 13.386923] platform 13040000.gpio: deferred probe pending [ 13.392956] platform 17020000.gpio: deferred probe pending [ 13.398979] platform 16050000.dma-controller: deferred probe pending [ 13.405966] platform 10000000.serial: deferred probe pending [ 13.412188] platform gpio-restart: deferred probe pending [ 13.418117] platform 120e0000.tmon: deferred probe pending [ 13.424149] platform cpufreq-dt: deferred probe pending [ 13.429886] platform leds: deferred probe pending [ 13.435064] platform soc:snd-card1: deferred probe pending [ 13.441091] platform soc:snd-card3: deferred probe pending [ 13.447126] platform 120b0000.i2stx_4ch0: deferred probe pending [ 13.453734] platform 2b000000.pcie: deferred probe pending [ 13.459761] platform 2c000000.pcie: deferred probe pending
Apologies for the lack of clarity in my post; this kernel is built and tested for Ubuntu server. There are likely several missing drivers necessary for a desktop environment.
Update to install instructions (unfortunately can’t edit OP):
Please install “linux-image-rolling” and “linux-headers-rolling” from my repo for future updates. 6.4.0-RC1 just dropped yesterday and due to the way the packaging was set this is seen as a different package from the 6.3.0+ package, meaning your kernel would not update to the latest version and would be stuck on 6.3.0+. I’ve changed the naming so now it’s just a rolling-release of the necessary packages, with the version info in the details. This should allow future updates to 6.4.0-RC2, 6.4.0, 6.5.0, etc.
I gave it a go for the first time just now with the ubuntu server image. The uart output for before and after is verbosely available here:
apt-get upgrade succeeded.
Thank you for all your efforts. I’m grateful. I’m surprised the kernel is already at 6.4rc1!!! WOW!
During the upgrade, I really appreciated all the efforts around the device trees being preserved just in case something goes wrong:
Processing triggers for initramfs-tools (0.142ubuntu2) …
update-initramfs: Generating /boot/initrd.img-6.4.0-rc1+
Using DTB: starfive/jh7110-starfive-visionfive-2-v1.3b.dtb
Installing /usr/lib/linux-image-6.4.0-rc1+/starfive/jh7110-starfive-visionfive-2-v1.3b.dtb into /boot/dtbs/6.4.0-rc1+/starfive/jh7110-starfive-visionfive-2-v1.3b.dtb
Taking backup of jh7110-starfive-visionfive-2-v1.3b.dtb.
Installing new jh7110-starfive-visionfive-2-v1.3b.dtb.
System running in EFI mode, skipping.
Scanning processor microcode…
Scanning linux images…
Running kernel seems to be up-to-date.
Hi, thanks for the great work. I was able to install the latest kernel and USB is working!
However, I have some issues with ethernet. Only eth1 port seems to work and get an DHCP IP address. When I tried to ssh into it, the screen often hangs either during the login process or later running normal apps (such as htop). Ethernet is reachable via ping. It seems data is not sent through.
Traffic going out to the internet seems fine as we I was able to download files, ssh to outside and do apt update, etc. (Of course, I was all these outgoing network activities from serial console instead of a ssh session)
Any ideas? Thanks!
Are you possibly using the v1.2a variant of the board and didn’t modify /etc/flash-kernel/machine to reflect that?
You have a 1 GbE + 100 MbE (AKA 1.2A) board? You need to set the board type.
It is v1.2A as printed on the board. I followed ubuntu wiki site and have updated the machine as follows. Anything else I need to do?
jsun@vf2:~/temp$ cat /etc/flash-kernel/machine StarFive VisionFive 2 v1.2A
I should mention that I’m using firmware v2.8.0 instead of latest v2.11.5, because v2.8.0 is the last version that can still fit into old MTD layout.
Not sure if this is a factor or not.
Interestingly, with the new kernel, /proc/mtd is not showing up any partitions. Is this expected?
The firmware shouldn’t be relevant; I have used all versions without issue. The setting of the machine type only takes effect once you
upgrade the kernel via. @agreenbhm’s repo.
If you did do that and it didn’t work then I don’t know why.
I assume you updated that file after installing the kernel? If so you will need to reinstall the kernel in order to have the post-install scripts (which read that file) process the correct DTB.
I updated the file before I installed your kernel, because that was the part of the step of setting up the initial ubuntu. In any case, I just re-installed the kernel page and it seems I still have the similar issue.
BTW, I notice /etc/flash-kernel/dtbs/ directory is empty. Is this expected? If we think we are using the wrong dtbs, are there other ways to confirm this?
jsun@vf2:~$ ls /etc/flash-kernel/dtbs/ README.dtbs
That directory isn’t used from what I’ve observed. Mine is empty except for the README also. You can manually install the correct DTB and then see what happens when you re-install the kernel, whether or not the correct one gets installed or not.
You’ll want to check your Grub config to see what DTB is being called by the bootloader. You can either look at the grub.cfg file (/boot/grub/grub.cfg), about halfway down the file, at the entry, which starts with “menuentry” and then see what is set for the “devicetree” parameter. Or, you can just press “e” when the Grub menu loads on boot to view/edit the parameters of the default entry.
I’m assuming that it’s set to “dtb-6.4.0-rc1+”, which is a symlink to “/boot/dtbs/6.4.0-rc1+/starfive/jh7110-starfive-visionfive-2-v1.3b.dtb” (if indeed the wrong DTB is being loaded). To manually set it to the right DTB, just overwrite the actual file (not the symlink) with “/usr/lib/linux-image-6.4.0-rc1+/starfive/jh7110-starfive-visionfive-2-v1.2a.dtb”. Check your logic that Grub is pointing to the symlink, and then the symlink is pointing to the newly copied DTB. Once that’s checked you can reboot. If everything is working fine at that point then the DTB is definitely the issue and we’ll need to figure out why the wrong one is being installed. If not, we’ll need to look elsewhere.
I’m excited about this development, but can’t get started. My board is a 1.3B, I updated the two firmware files (current as of May 11, 2023), and it boots the VisionFive2 202303 Debian just fine (including the Pink HDMI), but when I try to boot the
ubuntu-23.04-preinstalled-server-riscv64+visionfive2.img image, I get nothing on the UART. Have tried on multiple microSD cards, including ones that boot the Debian image fine. If I press and hold reset, the UART does report
dwmci_s: Response Timeout but that’s about it.
Thanks for your help. The dtb file was fine and not the issue. The seems to be related to an old 10/100mbps switch which connects the board to the WiFi router. When I connect the board directly to the WiFi router’s Ethernet port, both vf2 ether ports would work.
I’m getting a new gigabit switch and will update here tomorrow.