Jump to content

maxsub

Members
  • Posts

    39
  • Joined

  • Last visited

Posts posted by maxsub

  1. @sven-ola there are 3 ways to boot the R2S:

     

    1. Press the boot button before applying power. White USB port connected to a PC. Apply power. It goes into fastboot mode like an android. Theoretically this should let you flash the on-board eMMC. I can successfully put it in fastboot mode but the flashing has not worked.

     

    2. Boot from eMMC

     

    3. Boot from USB. 

    The eMMC has two boot partitions that are fixed size and one large main partition. 

    My project uses the u-boot environment but also does a few minor things. It prioritizes USB if it finds a bootable medium there. It also safely flashes the boot blocks on the eMMC and then the main blocks. It adds some safety checks before flashing. Nothing else. 
     

  2. The R2S has an internal eMMC and a USB port. After debugging the default u-boot scripts I found that it does not boot from USB once you have Armbian installed on eMMC. To reinstall a fresh copy of Armbian or any other OS, you have to use the fastboot based KyTool which does not usually work on a modern Windows PC with USB 3.0 ports.

    So you could end up in a state where you have to manually interrupt U-boot, or worse if you corrupt the eMMC.

     

    I rewrote the u-boot flow on the R2S. I also cleaned up the nand-sata-install and added a lot of safety checks. It will look at USB and boot from there. After that you can safely install to eMMC. Below is the link. Please let me know if it is worth submitting a PR. The changes will not touch anything in the main system, it adds these scripts to /usr/local/lib and /usr/local/sbin.

     

    https://github.com/arvindmaxar/u-boot-tools

     

     

     

  3. @sven-ola The nightly is on 6.19 without headers, so I can't build any additional drivers.

    The nightly is working on the R2S with ethernet ports and no heating issues, no load average problems.

    How do I get a 6.18 build (Current)?
    Thanks.

     

  4. @sven-ola Nightly build fixed the load problem and heat problem on R2S:

    linux-image-current-spacemit/now 26.2.0-trunk.574 riscv64 [installed,local]
    
      Armbian Linux current kernel image 6.18.18-current-spacemit


    This is my current uname -r:

    6.18.18-current-spacemit
  5.  

    > apt search linux-headers
    linux-headers-6.19.6+deb14+1-common/testing 6.19.6-2 all
      Common header files for Linux 6.19.6+deb14+1
    
    linux-headers-6.19.6+deb14+1-riscv64/testing 6.19.6-2 riscv64
      Header files for Linux 6.19.6+deb14+1-riscv64
    
    linux-headers-riscv64/testing 6.19.6-2 riscv64
      Header files for Linux riscv64 configuration (meta-package)
    
    > uname -r
    6.18.18-current-spacemit

     

  6. I installed 6.18.18-current-spacemit from the nightly but can't find the headers package to build the GPU support.

    The repo has 6.19.x headers but no 6.18.x headers.

     

  7. Managed to edit the MMC by booting from USB, mounting the MMC. The R2S is now up and running, with the mainline armbian.

    However, the CPU still spins in the kernel and generates a lot of heat.

    Idle load average is 2.02.

     

  8. I ran into some trouble. I managed to boot the USB and then used armbian-config to flash the image to internal eMMC. However the script copied the USB UUID instead of the MMC UUID so now the MMC won't boot.

    I need to edit the MMC and change the UUID.

     

  9. Thanks for the script @sven-ola. I got the R2S booted from USB. I had to tweak a few minor things.

    Where did you get the Ubuntu boot.cmd?

    usb start
    setenv devtype usb
    setenv devnum 0:1
    setenv prefix boot/
    setenv fdtfile dtb-6.6.99-legacy-spacemit/spacemit/x1_orangepi-r2s.dtb
    #setenv fdtfile spacemit/k1-orangepi-rv2.dtb
    setenv bootargs "console=ttyS0,115200 root=/dev/sda1"
    ls ${devtype} ${devnum} ${prefix}
    load ${devtype} ${devnum} ${ramdisk_addr_r} ${prefix}uInitrd
    load ${devtype} ${devnum} ${kernel_addr_r} ${prefix}Image
    load ${devtype} ${devnum} ${fdt_addr_r} ${prefix}/${fdtfile}
    booti ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}

     

  10. Thank you. R2S has a built in eMMC and USB. The only way to get a new image is to boot from USB but it seems like I have to manually load the image in u-boot. Is the u-boot script (boot.txt) for the build somewhere in GitHub?

  11. I ran into a problem. Flashed the nightly build to the eMMC on the R2S and now it won’t boot from USB. I can see the usb drive in u-boot and kernel.img and dtb. What’s the default address to load the kernel and dtb on these boards?

    thank you. 
     

  12. In the meantime I brought up an access point server using the nightly armbian build. So far it is running solidly. The WiFi is underpowered, while the rest of the system seems stable.

     

  13. I setup a fresh install on the RV2 using the pre-built Forky binary. Everything works stably but the idle load average is very high all the time:

     

    armbian@orangepirv2:~$ uptime

    09:22:27 up 13:30,  1 user,  load average: 2.00, 2.00, 2.00

     

    Looks like the bug that cause the kernel to spin is still there.

     

  14. Thanks @sven-ola! You have been of amazing support here.
    My worry about using the closed source binary firmware is that it opens up a security hole (no patches for vulnerabilities, etc). Same for OpenWrt - the xunlong code is a fork from OpenWrt and not being updated as far as I can tell.
    That's why I went the Armbian route, with your code in mainstream, it will get continuously updated.

    The WiFi is definitely underpowered, and CPU overpowered. I am using an R2S with a USB Wireless adapter (realtek): Panda wireless PAU0B.

    However, the 6.6 kernel seems to not allow AP mode.

     

  15. Is it possible to build against a current kernel (6.18 for example)?
    I am trying to build an access point on Armbian but 6.6 does not support AP mode on most adapters.

     

  16. So this is built fully from source by patching the xunlong source onto the edge code base?


    Armbian-unofficial_26.02.0-trunk_Orangepirv2_trixie_edge_6.18.8_minimal+Orangepirv2_1.0.0_ubuntu_noble_desktop_gnome_linux6.6.63.img.xz

     

  17. In your downloads site, does this one have the GPU hack?

    Armbian-unofficial_26.02.0-trunk_Orangepirv2_trixie_current_6.6.99_minimal.img. I can do some testing.

    Thank you.

     

  18. I started a build of mesa-spacemit-kt from source on the RV2 and ran into only a couple of issues:

     

    ../src/amd/llvm/ac_llvm_helper.cpp:102:10: error: no matching function for call to ‘unwrap(LLVMOpaqueModule*&)’

      102 |    unwrap(module)->setTargetTriple(TM->getTargetTriple().getTriple());

          |    ~~~~~~^~~~~~~~

    In file included from /usr/include/llvm-19/llvm/IR/Type.h:18,

                     from /usr/include/llvm-19/llvm/IR/DerivedTypes.h:23,

                     from /usr/include/llvm-19/llvm/IR/InstrTypes.h:26,

                     from /usr/include/llvm-19/llvm/Analysis/TargetLibraryInfo.h:14,

                     from ../src/amd/llvm/ac_llvm_helper.cpp:8:

  19. The second time I built it, the image deb worked and the bcmdhd dkms loaded.

     

    > dkms status

    bcmdhd-spacemit-sdio/101.10.591.84.37-4, 6.18.9-edge-spacemit, riscv64: installed

     

  20. The bcmdhd dkms is getting built and the debs are being updated if I use SKIP_ARMBIAN_REPO=yes.

     

    [🐳|🔨]   Building for 6.18.9-edge-spacemit

    [🐳|🔨]   

    [🐳|🔨]   Building initial module bcmdhd-spacemit-sdio/101.10.591.84.37-4 for 6.18.9-edge-spacemit

    [🐳|🔨]   The kernel is built without module signing facility, modules won't be signed

    [🐳|🔨]   

    [🐳|🔨]   Building module(s)............................... done.

    [🐳|🔨]   Installing /lib/modules/6.18.9-edge-spacemit/updates/dkms/bcmdhd.ko.xz

    [🐳|🔨]   Installing /lib/modules/6.18.9-edge-spacemit/updates/dkms/dhd_static_buf.ko.xz

    [🐳|🔨]   Running depmod.... done.

    [🐳|🔨]   Processing triggers for man-db (2.13.1-1) ...

    When installing the image deb the previous dkms gets deleted.
     

    Preparing to unpack linux-image-edge-spacemit_26.02.0-trunk_riscv64__6.18.9-S3aec-D0000-P87b2-C50afHfe35-HK01ba-Vc222-B052a-R448a.deb ...

    Armbian 'linux-image-edge-spacemit' for '6.18.9-edge-spacemit': 'prerm' starting.

    dkms: removing module bcmdhd-spacemit-sdio/101.10.591.84.37-4 for kernel 6.18.9-edge-spacemit (riscv64)

    Module bcmdhd-spacemit-sdio/101.10.591.84.37-4 for kernel 6.18.9-edge-spacemit (riscv64):

    Before uninstall, this module version was ACTIVE on this kernel.

    Deleting /lib/modules/6.18.9-edge-spacemit/updates/dkms/bcmdhd.ko.xz

    Deleting /lib/modules/6.18.9-edge-spacemit/updates/dkms/dhd_static_buf.ko.xz
    .........
    It gets built during install of the image deb:
     

    Autoinstall of module bcmdhd-spacemit-sdio/101.10.591.84.37-4 for kernel 6.18.9-edge-spacemit (riscv64)

    Building module(s)..............................................

    Installing /lib/modules/6.18.9-edge-spacemit/updates/dkms/bcmdhd.ko.xz

    Installing /lib/modules/6.18.9-edge-spacemit/updates/dkms/dhd_static_buf.ko.xz

    Running depmod.....

  21. 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

    }

     

×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines