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

Hello. I have had my board since last summer and have successfully run

  1. premade sd-images from the the repo tags, usually updating the spl and uboot files as I go.

  2. Before I updated to the new v3.82 from the second to last update, I was able to build a custom Armbian image which booted from SD card and had SCSI drivers, specifically SCSI transport FC and the drivers (QLE2xxx) as a module installed and working great to connect to my FC target box.

  3. recently in the past few days I updated the spl and uboot to [VF2_v3.8.2] and the board runs and boots th 202310 SD and NVME images just fine.

  4. The cw18 ARCH image is really good too. thank you.

  5. So I wanted to see if I could build a 6.1.y(31) kernel on the board and it works without a hitch. The instructions are valid, and I only noticed that the [ git checkout command needs to be run in the /linux folder, and not in the …/linux folder. ]

my work flow as best I can remember. I do have the serial to USB monitor.

  1. downloaded NVME 202310.
  2. Balena-etcher to NVME drive
  3. boot vf2 - 0/0 switch settings
  4. usual resizing of the /root partition - follow guide/your knowledge
    (note: thinking of maybe trying to make the /boot partition larger to hold
    more kernels, help here? )
  5. I did run the extras script, but I do not know if I had to yet.

a. wget https://github.com/starfivetech/Debian/releases/download/v0.8.0-engineering-release-wayland/install_package_and_dependencies.sh

b. sudo chmod +x install_package_and_dependencies.sh

c. sudo ./install_package_and_dependencies.sh


  1. dependencies

a. sudo apt-get install build-essential linux-source bc kmod cpio flex libncurses5-dev libelf-dev libssl-dev dwarves bison git

  1. repo

a. sudo git clone GitHub - starfive-tech/linux

  1. IMPORTANT DIFFERENCE

a. cd linux

b. sudo git checkout VF2_6.1_v3.8.2

  1. copy current running kernel config file as a starting point

a. sudo cp arch/riscv/configs/starfive_visionfive2_defconfig .config ( makes file )

b. sudo make ARCH=riscv olddefconfig ( copies from running kernel, mostly? ) : NOTE my board crashed setting the architecture on the native board. NOT CROSS COMPILING!

  1. Config your kernel - leave it alone, install drivers, peruse at your leisure. your call. BE CAREFUL

a. sudo make menuconfig

b. save work ( .config or save many with different settings…)

  1. Compile 6.1.x kernel

a. make ARCH=riscv -j$(nproc) bindeb-pkg : NOTE my board crashed setting the architecture on the native board. NOT CROSS COMPILING!

COMPILE TIME ( on the vf2 board ): Around 1.5 hrs. ( adding modules later only takes 5 min. when recompiling )

  1. Debian packages are found in …/linux - one level up from the repo. if you use //home/user/linux, then the *.deb files are in //home/user

a. sudo dpkg -i *.deb

--------------IMPORTANT--------------
b. sudo cp -r ~/linux/debian/linux-image/usr/lib/linux-image-6.1.(x)/* //boot/dtbs

c. sudo reboot


Booted right up for me. kernel 6.1

PROBLEMS:

  1. desktop if slower than molasses. I added the PVR drivers as a module as dmesg showed it did not load from initramfs. Does load now but make no difference. So now on to the video side I guess. For another post.

STUFF I RUN:

  1. npm - for uptime-kuma works well.
  2. usual apache2 web server intranet stuff.
  3. htmly blog self hosted thing.
  4. rust stuff / cargo
  5. want to try the gpio and node.js gpio interfacing.
  6. 95% command line stuff.
  7. and golang - gotty

STUFFI DO NOT UNDERSTAND:

  1. how to configure the booting of “current” ARMBIAN, SLARM64, DIETPI, and UBUNTU images… not a single one of them will boot at all.
    Yes I reset the env defaults.

  2. NO EFI booting???

ANSWER TO THE TOPIC QUESTION:

yes, there is a 6.1 kernel supporting m.2, and you can make it.

sorry if I made any mistakes/comments welcome.

1 Like