armfan
-
Posts
10 -
Joined
-
Last visited
Reputation Activity
-
armfan reacted to mBesar in Orange Pi RV2
Hi @sven-ola, first of all a huge thank you for maintaining this image — the work you're doing for the Orange Pi RV2 is genuinely appreciated, especially given how early the SpacemiT/K1 ecosystem still is.
I'd like to kindly request enabling a few kernel config options in the next build. I'll split them by priority:
Request 1 — TechniSat SkyStar USB 2 HD (simple, guaranteed fix)
CONFIG_DVB_B2C2_FLEXCOP_USB=m The FlexCop core (CONFIG_DVB_B2C2_FLEXCOP=m) and all its dependencies are already enabled in the current kernel. This is a one-line addition that will make this DVB-S2 USB receiver work out of the box with no further changes needed.
Request 2 — TBS DVB cards via out-of-tree media_build (best-effort)
CONFIG_DVB_USB=m CONFIG_DVB_USB_V2=m CONFIG_MEDIA_CONTROLLER_DVB=y These are the required kernel-side foundations for the TBS linux_media out-of-tree driver tree to compile and load. All dependencies are already satisfied in the current config (DVB_CORE=y, MEDIA_USB_SUPPORT=y, MEDIA_CONTROLLER=y).
I say "best-effort" because the TBS media_build source has compatibility issues with kernel 6.18 APIs that require manual patching regardless of kernel config — so these options are necessary but not the whole story on my end. That part is on me to sort out, not on you.
Environment for reference:
Board: Orange Pi RV2 (orangepirv2) Kernel: 6.18.33-current-spacemit Armbian: 26.8.0-trunk.61 (BRANCH=current) Thank you again for your time and effort — genuinely appreciated! 🙏
-
armfan reacted to sven-ola in Orange Pi RV2
While I am here: I have a Mediatek Tri-Band Wifi card installed in my RV2 (label reads MT7922A22M). There's a matching driver in OpenWrt created by Felix and friends. This will take some time until pushed upstream. So, why not make it a DKMS module? That's how things started 🤪
# Grab bleeding edge Wifi from OpenWrt cd /usr/src git clone https://github.com/openwrt/mt76.git mt76-6.18 cd mt76-6.18 # Source code massage (needs OpenWrt kernel patch, missing include) git revert 9a46d8d2 sed '/^#include <linux\/kernel.h>/i#include <linux/version.h>' mt76.h # New DKMS config (with more than one module) cat > dkms.conf << "EOF" PACKAGE_NAME="mt76" PACKAGE_VERSION="6.18" BUILT_MODULE_NAME[0]="mt76" DEST_MODULE_LOCATION[0]="/updates/dkms" BUILT_MODULE_NAME[1]="mt76-connac-lib" DEST_MODULE_LOCATION[1]="/updates/dkms" BUILT_MODULE_NAME[2]="mt792x-lib" DEST_MODULE_LOCATION[2]="/updates/dkms" BUILT_MODULE_NAME[3]="mt7921e" BUILT_MODULE_LOCATION[3]="mt7921" DEST_MODULE_LOCATION[3]="/updates/dkms" BUILT_MODULE_NAME[4]="mt7921-common" BUILT_MODULE_LOCATION[4]="mt7921" DEST_MODULE_LOCATION[4]="/updates/dkms" AUTOINSTALL="yes" MAKE="make -C ${kernel_source_dir} M=${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build CONFIG_WLAN_VENDOR_MEDIATEK=y CONFIG_MT76_CORE=m CONFIG_MT76_LEDS=y CONFIG_MT76_CONNAC_LIB=m CONFIG_MT792x_LIB=m CONFIG_MT7921_COMMON=m CONFIG_MT7921E=m " EOF # Add, build, install, and add matching firmware dkms add -m mt76 -v 6.18 dkms build -m mt76 -v 6.18 dkms install -m mt76 -v 6.18 cp -av firmware/ /lib/firmware/updates/mediatek # Give it a try reboot
-
armfan reacted to rm_ in Orange Pi RV2
I remember reading somewhere that the top slot doesn't support booting from NVMe. If it's non-boot then it shouldn't matter.
-
armfan reacted to c0rnelius in Orange Pi RV2
Some NVMe's just don't play nice with some units. I have one such NVMe, which is why I rarely try to use it. Also u-boot is not set up to look for an infinite amount of $devnum. Currently it is hard coded to look for nvme 0:1. So I suggest moving the NVMe to the first available.
According to the boot log you have more than one PCIE link up
[ 1.438] PCIE-0: Link up (Gen2-x2, Bus0) <-- Thats where you want to attach the NVMe
[ 1.600] PCIE-2: Link up (Gen2-x2, Bus2)
Honestly though. It looks like the NVMe you are trying to use isn't compat.
-
armfan reacted to sven-ola in Orange Pi RV2
@rm_ No, SD and NVME are working with Armbian edge 7.1, while USB does not.
root@orangepirv2:~# uname -a Linux orangepirv2 7.1.0-rc3-edge-spacemit #3 SMP PREEMPT_DYNAMIC Sun May 10 21:08:09 UTC 2026 riscv64 GNU/Linux root@orangepirv2:~# blkid /dev/nvme0n1p1: LABEL="armbi_root" UUID="fdbd4ab2-2238-4a62-a079-74ff0582c8d2" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="00406d4f-01" /dev/mmcblk0p1: LABEL="armbi_root" UUID="63ee7593-e111-4547-ac2f-6bdb8519ce11" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="9ebf8299-01" /dev/zram0: UUID="3be872bc-b408-46c3-8ec9-d27500adc1dd" TYPE="swap" /dev/zram1: LABEL="log2ram" UUID="bace3aba-15ea-4833-a7ad-f7d9e39aa0c5" BLOCK_SIZE="4096" TYPE="ext4" root@orangepirv2:~# lsusb root@orangepirv2:~# lspci 0001:00:00.0 PCI bridge: SpacemiT X60 PCIe 2.0 x2 Root Complex (rev 01) 0002:00:00.0 PCI bridge: SpacemiT X60 PCIe 2.0 x2 Root Complex (rev 01) 0002:01:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller PM9B1 (DRAM-less) (rev 02) Anyhow, thanks for the Phoronix link // Sven-Ola
-
armfan reacted to sven-ola in Orange Pi RV2
Hi @armfan. From what I am able to extract from the flood of braindumps you have a non-working NVME with 2TB that is not working for some reason. If it really stops sometimes in the middle of u-boot::nvme::init then you may have some power issue with this NVME.
For comparison: I placed my NVME in the lower m.2 and booted via MTD the u-boot armbian-installed from the "current" image downloadable from my site. See attached capture file.
HTH // Sven-Ola
nvme-lower-uboot-may-26-2026.cap
-
armfan reacted to sven-ola in Orange Pi RV2
Hey @armfan. UUID=63ee7593-e111-4547-ac2f-6bdb8519ce11 was read from /boot/extlinux/extlinux.conf which is correct for the edge/7.1.0rc3 image. However, something must be wrong with your SD card if u-boot can read UUID from extlinux.conf, but kernel does not find corresponding file system on the same boot media. This is the expected kernel startup :
[ 0.000000] Booting Linux on hartid 0 [ 0.000000] Linux version 7.1.0-rc3-edge-spacemit (build@armbian) (riscv64-linux-gnu-gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0, GNU l [ 0.000000] Machine model: OrangePi RV2 [ 0.000000] SBI specification v1.0 detected [ 0.000000] SBI implementation ID=0x1 Version=0x10003 [ 0.000000] SBI IPI extension detected [ 0.000000] SBI RFENCE extension detected [ 0.000000] earlycon: sbi0 at I/O port 0x0 (options '') [ 0.000000] printk: legacy bootconsole [sbi0] enabled Loading, please wait... Starting systemd-udevd version 257.13-1~deb13u1 Begin: Loading essential drivers ... done. Begin: Running /scripts/init-premount ... done. Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done. HTH // Sven-Ola
-
armfan reacted to maxsub in Orange Pi RV2
Got it! But this DKMS should be loaded by the build:
function post_family_tweaks_bsp__orangepirv2_wifi() {
display_alert "$BOARD" "Force load bmcdhd wireless" "info"
run_host_command_logged mkdir -pv "${destination}"/etc/modules-load.d
run_host_command_logged echo "bcmdhd" > "${destination}"/etc/modules-load.d/${BOARD}.conf
}
-
armfan reacted to sven-ola in Orange Pi RV2
Hu? In difference to Spacemit 6.6.99, the 6.18 kernel has no bcmdhd included. For that reason I put in an adapted version of bcmdhd in a DKMS, installed via a source deb from my repo on codeberg.org/sven-ola. B/c DKMS needs a compiler on the board, the edge image is larger than current image. Code quality of bcmdhd is questionable so it probably never make it into the official Linux tree, but it works (at least on my board with my image). HTH // Sven-Ola
-
armfan reacted to sven-ola in Orange Pi RV2
I think I've completed all tasks. Thus the OpiRV2 PR now waits for a team member to press the [merge] button probably.
@maxsub I compiled 6.6.99 kernel on my board with 2Gb RAM once. Needed 3 hours and a decent swap file. HTH // Sven-Ola
-
armfan reacted to maxsub in Orange Pi RV2
I am so thrilled to be able to get this working. Donation to Armbian on the way.
-
armfan reacted to maxsub in Orange Pi RV2
This is fantastic work! Thank you so much. I was able to build from source. Tested it on RV2 and R2S and both work great. Your changes are patched on to the 6.6.99 kernel as far as I can tell. Are these going to be merged upstream and make their way into 6.17?
Thanks again for your amazing work.
-
armfan reacted to rayrayrayraycat in Orange Pi RV2
THANK YOU so much for this effort. I no longer regret buying an OrangePi RV2!
-
armfan reacted to Malay in Orange Pi RV2
Hello, sven-ola!
First of all, thank you very much for your work! HDMI audio now works well on the Edge.
Secondly, I'm not particularly knowledgeable about this, so please forgive me in advance for this possibly stupid question 🙂
It's impossible to implement video hardware acceleration support in the firmware, from here - https://sdk.spacemit.com/en/faqs/ ?
If I understand correctly, patched versions of FFmpeg and GStreamer are needed, and they should also be integrated in firmware into the k1x-vpu-firmware and mpp . Is this possible?
When playing any video (even at very low resolution), there is terrible lag. The board should easily support 4K HEVC, but it can't play 720p video properly.
At the same time, the Banana Pi BPI-F3 board with similar technical characteristics copes with video 4K HEVC https://docs.banana-pi.org/en/BPI-F3/BananaPi_BPI-F3.
-
armfan reacted to sven-ola in Orange Pi RV2
Hello @Malay! No need to raise your voice. Anyhow - thanks for the feedback. The missing HDMI audio has a deeper reason: the communication with the Realtime-CPUs does not work. Background: HDMI audio needs a special DMA: adma, that in turn is supported by the rCPUs (the extra Cores running the real-time-OS from esos.elf) and that does not communicate correctly via rpmsg currently. Not sure why and also not sure if this is true with the other RiscV/Spacemit boards.
The 2280 M.2 slot works, I am pretty sure. If you need a running Armbian *with* HDMI audio, grab the orangepi-rv2-ky branch from my repo. It's older and I use it to compare working vs. non-working currently.
Also, there's a reason this has no pull request to Armbian/main: it's work-in-progress.
LG // Sven-Ola
-
armfan reacted to sven-ola in Orange Pi RV2
Have solved another todo: grab overlay *.dtbo from Ky/Xunlong. There is still some quirks with SD/TF read/write speed (UHS / 1.8v mode). Also applied for Armbian maintainership on orangepirv2 in advance.
Had some experiments with that M.2 to PCIe adapter I recently got. That oversized thing is an older Radeon with an Opi RV2 mounted on top. That does not work (no, card is so old it does not require extra 12V). Second image is a even older Nividia Geforce, That one shows up with "lspci" but does not work b/c no RiscV drivers (that's expected). Next ist an TP-Link / Aquantic 10 GbE Ethernet card. That one works, even without that extra power supply from the PC next to it. Not sure, if the Spacemit CPU can handle the ten gigs... Last image: the 2280-to-PCIe adapter with the eternal SATA power feed cable.
LG // Sven-Ola
-
armfan reacted to sven-ola in Orange Pi RV2
If inserted, SD is booted first. If not inserted or SD read err, NOR flash is booted. NOR flash in turn boots from lower 2280 NVME. I have added boot-from-upper 2230 NVME to uboot. To install
Boot via SD. Log in as root. Start armbian-install Select 7 Install to MTD Put fresh image to NVME via dd of=/dev/nvme... Eject SD, press [reset] If anything is wrong, start over with 1. Boot via SD. I am not sure wich NVME (upper or lower?) is used first.
Note: If you put the same image to both NVMEs and insert SD, you may have up to three ext4 partitions with the same UUID in the box. So on reboot it is very unclear which of the three ext4 is used as root. Check with df -h /. If necessary, you can use uuidgen from uuid-runtime package and tune2fs -U as well as nano to change extlinux.conf for a different ID.
HTH // Sven-Ola
-
armfan reacted to sven-ola in Orange Pi RV2
@armfan you start mixing instructions from Xunlong, SpacemiT, and Armbian. That will not work probably. The SoC is able to boot from SD, eMMC, and MTD (in that order). With Armbian started, you can use armbian-install to write u-boot to MTD (which is Memory Technology Device aka the kernel device for SPI flash and other flash mem). That Armbian u-boot is able to indirectly boot from NVME. Or via USB but only with manual u-boot commands you can type into the UART console, see discussion on OpiR2S booting in this thread.
-
armfan reacted to brunorro in Orange Pi RV2
Hey, thank you very much!! Downloading and testing current (did a dd on an sd card, didn't boot, I'll check it again)
But edge... Boots! I have to check it with some more care so I can see how does it work
And yes, the guys from Devuan make a good work keeping stuff a bit simpler. I like quite a lot Void Linux (in fact this laptop I'm writing in has it installed)
I'll test current with some more care
Thank you!
current.txt
edge.txt
-
armfan reacted to sven-ola in Orange Pi RV2
Hello @brunorro, I have uploaded two images to https://privat-in.de/ (navigate to downloads, grab Armbian*.img). Simply post findings here.
The "edge" image is rather unstable, e.g. my NVME gives a read-error while working fine with "current", while a Mediatek Wifi card seems to work. Probably no easy task, could be anywhere in the IOMMU - DMA - PCIe triangle. The images are compiled from https://github.com/sven-ola/armbian-build/tree/orangepi-rv2 kernel with defaults plus switched on every Mediatek Wifi driver module. Here's my Todo for ref (+ marks ok):
To be merged
+ Boot from SSD (upper+lower)
+ SPI NOR flash boot / install
+ SD/TF speed too slow (15mb/s)
- Check SD UHS in uboot speed limit
+ Brcm SDIO wifi not working
- Armbian edge: Brcm SDIO Wifi
- Armbian edge: PCIe NVME IOErr
+ Bluetooth not working
- RTL ethernet (2.5gbit R2V board?)
- Ky overlay dtbo's missing
- Focaltech touch driver from Ky?
- Ky MIPI/CSI cam modules
- What is that realtime r_uart?
- GPU? USB2-OTG? USB3? Sound?
Personal wishlist:
- Device-mapper / dm_era missing
+ Mediatek PCIe wifi modules
- PCIe adapter: Radeon GPU test
Ah, yes. OpenWrt is on the Ky list of supported systems. I have a personal history on that too. While getting rid of systemd may be not that difficult (see Devuan) exchanging libc is another beast probably.
LG // Sven-Ola
-
armfan reacted to sven-ola in Orange Pi RV2
Hello @brunorro. Yes, sometimes people are hacking badly. I have it working again after restarting with Armbian/Spacemit: u-boot starts, onboard BT and Wifi works, SD card is again reading with 80mb/s, transfer u-boot and SBI to MTD via armbian-install works (MTD boot is required for starting from SSD), both M.2 slots can boot from NVME.
Sadly, the Broadcom SDIO wifi driver is a smoking mess. This driver needs heavy porting so its not available with linux-6.18 / edge currently. Are you willing to test anyhow? I can provide a 6.6.99 Trixie image for download if you ACK. There are always things that I may have overlooked such as USB, HDMI. All those little things I have not tested, I' on UART currently.
LG // Sven-Ola
-
armfan reacted to brunorro in Orange Pi RV2
Hey,
Thank you for working on this one. I have the very same and the sunxi scripts to create the Ubuntu image (tricked into trixie) are horrible. For instance, to create ky image they download all toolchains (ARM and so on) from its site and it's kind of difficult to even change that one. I would love to use upstream u-boot and spacemit 6.19 kernel on this one (already compiled for it) but I'm no expert and the lack of docs and ways to work on this one kills me
Thank you!
-
armfan reacted to sven-ola in Orange Pi RV2
All clear for the PCIe MSI: it is something with that Intel 7260 card. Today, I got two other M.2 Wifis: MT7922 and RTL8822ce, both seem to work on current and also on edge. Thus, I consider this as a success. Here's some screen blurb.
// Sven-Ola
-
armfan reacted to sven-ola in Orange Pi RV2
PCIe MSI is not working. At least with an Intel iwlwifi M.2 card. For that reason, I investigated the differences between the Xunlong KY tree and the Armbian Spacemit Tree. B/c loading the "official" 552kb esos.elf seems to work (even if the Ky version is only 104kb) on the OrangePi RV2, I started to backport Xunlong changes to Armbian/Spacemit family.
Newer kernel, but no luck with that MSI. There should be a DMA-transfer-complete interrupt at the end of the firmware upload. Card is working in my PC. MSI is working on OpiRV2 with NVME. Current status: board runs with spacemit-family kernel, but some minor Does-Not-Work yet: LED, onboard Wifi+BT and I need to check that special RTL eth...
LG // Sven-Ola
Edit: Pic it or it didn't happen. RV2 underside with WIfi card.
-
armfan reacted to sven-ola in Orange Pi RV2
As a followup: hardware crypto is damn slow on the Ky / SpacemIt platform, at least for default LUKS block encryption with AES. This probably also affects the Banana Pi F3 image.
With default sector-size of 512 byte, HW-AES is 5 times slower than SW-AES, while cryptsetup benchmark reports 5 times faster.
Main reason: block size. With sector-size of 4096 LUKS is reasonable fast. Also there is leftover debug (cannot be switched off) and a small bugs in the driver that triggers SW crypto fallback after HW crypto succeeds. Patches: https://github.com/sven-ola/armbian-build/tree/orangepi-rv2/patch/kernel/ky-current
Best // Sven-Ola
