Just for the heck of it, I am test-driving a RISCV Linux SBC called the Sipeed Lychee RV 86.
When I plugged it in, nothing happened. No console ouput on the USB tty, nothing on the screen.
It turns out there is no software loaded on it: the flash memory slot is empty. So you need to provide your own storage, and own OS.
First attempt is with a "debian-minimal" install.
# dd if=debian-minimal-licheerv.img of=/dev/sdb bs=32K
134272+0 records in
134272+0 records out
4399824896 bytes (4.4 GB, 4.1 GiB) copied, 248.155 s, 17.7 MB/s
Those were the write speeds to my "Sandisk Extreme PLUS." Hmm... that does not seem to be an extreme speed, to me. It has a U3 designation. Oh well.
UPDATE: Lexar x1000 was even worse: 15.7 MB/s and the write speed slows down, as you write more. Remind me never to buy Lexar SD cards again.
And it works!
With the card inserted, I now get a login prompt on ttyUSB0 in 32 seconds. Not bad at all.
Somehow, it takes a long time for the Ethernet device to show up with ifconfig command?
When it does, ifup usb0 is not working: ifup: unknown interface usb0
When I make usb0 interface known, the dhcp client will receive no offers, unfortunately. Despite the Ethernet light blinking, so there is network activity.
UPDATE
I have been able to work around the need for a proprietary MSWindows tool to use the Lichee RV disk images.
With the OpenixCard tool, you can extract a normal image, that you can write with dd to an SDCARD.
$ file ~/Downloads/LicheeRV_Debian_86_480p.img
/home/bram/Downloads/LicheeRV_Debian_86_480p.img: data
./OpenixCard -i ~/Downloads/LicheeRV_Debian_86_480p.img -d
...
$ file /home/bram/Downloads/LicheeRV_Debian_86_480p.img.dump.out/LicheeRV_Debian_86_480p.img
/home/bram/Downloads/LicheeRV_Debian_86_480p.img.dump.out/LicheeRV_Debian_86_480p.img: DOS/MBR boot sector; partition 1 : ID=0xc, start-CHS (0x2,35,2), end-CHS (0x2,163,1), startsector 34336, 8064 sectors; partition 2 : ID=0xee, start-CHS (0x0,0,2), end-CHS (0x0,33,1), startsector 1, 2079 sectors
$ sudo dd if=/home/bram/Downloads/LicheeRV_Debian_86_480p.img.dump.out/LicheeRV_Debian_86_480p.img of=/dev/sdb bs=1M
8237+1 records in
8237+1 records out
8637726720 bytes (8.6 GB, 8.0 GiB) copied, 435.776 s, 19.8 MB/s
UPDATE
The Debian image works great. I removed all X11 stuff, and will just use fb0.
I noticed that eth0 mac address is randomized at each boot, so I had to create an entry in /etc/network/if-pre-up file:
#!/bin/sh
IFCONFIG=/sbin/ifconfig
if [ ! -x $IFCONFIG ]; then
exit 0
fi
if [ "$IFACE" = eth0 ]; then
$IFCONFIG $IFACE hw ether XX:XX:XX:XX:XX:XX
fi
UPDATE
To set the timezone: $ timedatectl set-timezone America/Vancouver
If not using wifi, it is probably a good idea to remove xr829 from /etc/modules file.
I have been removing a lot of packages, trying to get a minimal install.
To aide this effort, I decided to graph the dependencies, to see which cuts I can make in the dependency chains.
UPDATE
The D1 CPU is RV64IMAFDCVU which means it does: INTEGER MUL/DIV, Atomic, SP FP, DP FP, Compressed Instructions, Vector Operations, User.
Sadly, it has no conditional move operations.
UPDATE
Tyring to build a new kernel for this, using these instructions.
Oof! getting the linux kernel source with git history... 5.2GByte.
These sizes of these things are getting out of hand.