Is there a usable 6.x kernel supporting M2/SSD?

I’ve tried the upstream kernel from GitHub - starfive-tech/linux at JH7110_VisionFive2_upstream. Unfortunately it could NOT boot.

The only usable 6.x kernel is 6.2.6 from ubuntu 23.04. It works well but lack of support of PCIe and USB.

Even Ubuntu Server 23.04 for the StarFive VisionFive 2 preinstalled image does not currently support USB or PCIe:

I would keep an eye on for a mainline, stable (or preferably a longterm kernel) which adds support for PCIe neither of which is currently in any upstream kernel (yet). But patches do exist (see previous link) so you could patch your own kernel and/or backport the current patches. Or you can wait until they are accepted in possibly kernel 6.5 (or 6.6).

1 Like

Thanks, I’ll try the patches later to test. Actually what i’m expecting is a working repo with all patches applied (JH7110 Upstream Status | RVspace), Ha ha

Have you tried the one from Daily Ubuntu Kernel Builds - Now With 100% More APT Repo! it is 6.4.0-rc6+ ?
USB works (on an 1.2 board with 1.2 dtb) with that one. I haven’t tried nvme yet (can try tonight) . The nvme is recognized with that kernel too.


That just means I need to re-try with the upstream branch again since it’s off into that space.

The meta-riscv repo for Yocto support’s lagging…and I’ve got projects that leverage the NVMe and other things. Be better if I could get 6.x support going. Thing is…it’s…messy and missing hunks of stuff like DT pieces to build with.

I had the 6.2 stuff working nice enough at one point. Problem is that we’ve got all sorts of people running down blind alleys on varying different fronts (For example…WHY are they insisting on a FIT image. That really only makes sense if you’re using MTD and bulk NAND flash.)

Thank you ! That saved me a lot of trouble :slight_smile:

I just tried agreenbhm’s kernel this morning. My aigo 2T (with Maxio’s controller) works, but no luck with WD Black 1T.

root@VF2:~# lspci
0000:00:00.0 PCI bridge: PLDA XpressRich-AXI Ref Design
0000:01:00.0 USB controller: VIA Technologies, Inc. VL805/806 xHCI USB 3.0 Controller (rev 01)
0001:00:00.0 PCI bridge: PLDA XpressRich-AXI Ref Design
0001:01:00.0 Non-Volatile memory controller: MAXIO Technology (Hangzhou) Ltd. Device 1602 (rev 01)
root@VF2:~# fdisk -l /dev/nvme0n1
Disk /dev/nvme0n1: 1.86 TiB, 2048408248320 bytes, 4000797360 sectors
Disk model: aigo NVMe SSD P7000Z 2TB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: F487646B-D5F3-4C2F-9652-17725D3C0583

Device Start End Sectors Size Type
/dev/nvme0n1p1 2048 3750000639 3749998592 1.7T Linux filesystem
root@VF2:~# hdparm -t --direct /dev/nvme0n1p1

Timing O_DIRECT disk reads: 500 MB in 3.01 seconds = 166.33 MB/sec

root@VF2:~# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
root@VF2:~# uname -a
Linux VF2 6.4.0-starfive #136 SMP Fri Jun 16 01:55:05 UTC 2023 riscv64 riscv64 riscv64 GNU/Linux