JamesCL Posted May 24 Posted May 24 Is it possible to change the boot order? For my use case, I would like the boot priority to be: eMMC, NVMe, and microSD card. Can this be configured? 0 Quote
savznkvo Posted Wednesday at 10:40 AM Posted Wednesday at 10:40 AM @Logan yes, Fanxiang S500Pro 256GB, 6.18.30 0 Quote
sven-ola Posted Wednesday at 01:23 PM Author Posted Wednesday at 01:23 PM Hi @JamesCL. You cannot change the boot order of the SoC (SD -> eMMC -> MTD / SPI flash), thus i.e. the SD card is always booted if inserted. You can probably change the root file system's UUID, i.e. change the /boot/extlinux/extlinux.conf to give the kernel the command to use eMMC as root file system. HTH // Sven-Ola 0 Quote
mBesar Posted yesterday at 02:32 PM Posted yesterday at 02:32 PM 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! 🙏 0 Quote
sven-ola Posted 10 hours ago Author Posted 10 hours ago (edited) Hello @mBesar, while I can build images with additional kernel modules, the next "apt-get upgrade" may install a newer kernel that discards such additions. Why not build this on your own? There is already a working DKMS build system on the board for the bcmdhd wifi module. On the next kernel update, DKMS will recompile bcmdhd.ko for the new kernel automatically. Sadly, when I tried this for b2c2-flexcop-usb, it was not too easy to do. Armbian does not provide kernel sources with "apt-source", and the mentioned module itself uses an additional "-i include-dir" during build. So as an example, try to do this on your board: As root: # Change two times "Types: deb deb-src" nano /etc/apt/sources.list.d/debian.sources # Check for avail linux image packages, this time 6.18.5-deb13-parisc apt-get update grep linux-image /var/lib/apt/lists/*Sources|grep 6\\.18|less -S # We are not interested in this image, we just need some source code cd /usr/src apt-get source linux-image-6.18.5+deb13-parisc # Add a new DKMS module (dkms already here b/c bcmdhd wifi driver) mkdir /usr/src/b2c2-flexcop-usb-6.18 cd /usr/src/b2c2-flexcop-usb-6.18 cat > dkms.conf << "EOF" PACKAGE_NAME="b2c2-flexcop-usb" PACKAGE_VERSION="6.18" BUILT_MODULE_NAME[0]="b2c2-flexcop-usb" DEST_MODULE_LOCATION[0]="/updates/dkms" AUTOINSTALL="yes" MAKE="make -C ${kernel_source_dir} M=${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build CONFIG_DVB_B2C2_FLEXCOP_USB=m" EOF # What subsys do we need? Says: drivers/media/usb/b2c2, then grab that dir grep DVB_B2C2_FLEXCOP_USB $(find /usr/src/linux-6.18.5 -name Kconfig*) cp -av /usr/src/linux-6.18.5/drivers/media/usb/b2c2/. . # The module Makefile uses an additional include dir. We simply copy them here cp -av /usr/src/linux-6.18.5/drivers/media/common/b2c2/*.h . # Register, build, and install dkms add -m b2c2-flexcop-usb -v 6.18 dkms build -m b2c2-flexcop-usb -v 6.18 dkms install -m b2c2-flexcop-usb -v 6.18 HTH // Sven-Ola Edited 10 hours ago by sven-ola 0 Quote
sven-ola Posted 55 minutes ago Author Posted 55 minutes ago 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 0 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.