Armbian for DuoS - for ARM and RISC-V

Using the great repository by @queenkjuul and my previous attempts, I forced Claude to bring up Armbian on Milk-V DuoS. What works for now are the features from @queenkjuul but their scripts are not integrated. This was built upon the previous systems, for example by @Fishwaldo

What’s interesting about the board, as implemented now, is that most of the bootloader (fip.bin) is built from source. The only binaries needed are two files, about 45 KB in total. Both architectures are as de-blobbed as possible.

Also, the kernel (7.0 edge and 7.1 bleedingedge at the moment) is built for arm64 and riscv64 from the exact same source. This is the only board that can do it in Armbian.

I plan to develop it a bit more and add to armbian as a csc board. Please help with testing.

Here’s a link to the branch where it lives: GitHub - lukaszsobala/build at milkv-duos-enablement · GitHub

EDIT: bumped the bleedingedge kernel to 7.2. eMMC booting works as well. I’ve made some DTB fixes, now the eMMC is visible when booted from the SD card, and vice versa. The USB mode defaults to host, and gadget mode is a device tree overlay. Does this sound sensible?

2 Likes

Happy to report that the images are now distributed in standard Armbian: Add Milk-V DuoS, an aarch64+riscv64 board by lukaszsobala · Pull Request #10326 · armbian/build · GitHub

There is one quirk about installing to the eMMC: you need to use sophgo-emmc-install as straight dd will not work.

Alternatively, you can build an image using the following extension: EXT=image-output-sophgo-emmc-installer. The output image will need to be flashed to an SD card. When the board boots, it will flash the content to the eMMC, overwriting anything that was there before, without confirmation - therefore, you need to be sure before you do this.

As previously, you can track the progress using the serial console, or just wait a few minutes. Then, disconnect power, remove the SD card (otherwise it will flash again) and you will be able to boot from eMMC.

1 Like