Skip to content
View in the app

A better way to browse. Learn more.

Armbian Community Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Armbian build PR] - rk3588: experimental UEFI edk2 support

Featured Replies

rk3588: experimental UEFI edk2 support

  • core extensions: fix: don't redefine extension_function_info when recursing
    • otherwise when there's a chain of enable_extension() we lose the original info
  • extensions: grub-with-dtb: add UMS menu entry to GRUB if initramfs ums hook is detected
    • this allows user to enter UMS mode from GRUB
    • for usage with the initramfs-usb-gadget-ums extension
    • has no effect unless initramfs-usb-gadget-ums extension is enabled together with grub-with-dtb
  • extensions: initramfs-usb-gadget-ums: kernel cmdline enables initramfs UMS of all block devices
    • this optional extension adds an initramfs script that:
      • enumerates and filters all block devices
      • exposes each device as an UMS (USB Mass Storage) in an USB Gadget
      • loops forever with info (board never boots)
    • the idea here is to compensate for UEFI's lack of "ums" or "rockusb" mode that's present in u-boot
    • it also allows to expose USB/NVMe devices that might or not be detected by bootloader, if the kernel works
  • extensions: uefi-edk2-rk3588: deploy edk2 (not u-boot) for rk3588 boards
    • this extension is 100% optional and shouldn't adversely affect any builds if not enabled
    • requires UEFI_EDK2_BOARD_ID to be set in board file, so we know which UEFI/edk2 build to use
    • it finds the latest edk2 version from GitHub automatically (currently v0.9.1)
    • it downloads (and caches) the correct edk2 build image automatically
    • if forces certain aspects of the image:
      • must use GPT partitioning
      • must NOT use a separate /boot partition
    • it disables the building and deploying of u-boot completely (thus blobs etc are from edk2)
    • it creates a GPT "uboot" partition pointing to edk2's FIT, required by SPL
    • this extension:
      • automatically enables 'grub-with-dtb'
      • automatically enable 'initramfs-usb-gadget-ums', to compensate for lack of ums/rockusb since we dont have u-boot anymore
  • rk3588: configure UEFI_EDK2_BOARD_ID for all UEFI-supported boards
    • From https://github.com/edk2-porting/edk2-rk3588/releases/tag/v0.9.1
      • For example, for rock-5b_UEFI_Release_v0.9.1.img
        • UEFI_EDK2_BOARD_ID is rock-5b
    • Important: this has no effect unless optional extension is enabled
    • to test this out:
      • make sure to read carefully the instructions at https://github.com/edk2-porting/edk2-rk3588/blob/master/README.md
      • suppose you previously built the regular u-boot version with:
        • ./compile.sh BOARD=rock-5b BRANCH=legacy RELEASE=jammy
      • now you can build the UEFI version with:
        • ./compile.sh BOARD=rock-5b BRANCH=legacy RELEASE=jammy EXT=uefi-edk2-rk3588
      • write the produced image to SD or eMMC and boot it
      • use normally, or enter "UMS" mode by selecting that option in the grub menu
        • You can write image to eMMC, boot it, enter UMS, write it again to NVMe, reboot, press in UEFI and boot from NVMe
        • Also works if .img is written to eg USB stick, and UEFI edk2 is separately deployed to SPI flash
    • Important: make absolutely sure you are able to force Maskrom mode (by shorting pins, pressing buttons, etc) before writing an UEFI image to eMMC; UEFI has no RockUSB ("Loader mode" support) at all. The new "initramfs-usb-gadget-ums" extension hopes to address this, but it is not guaranteed to work.

View the full article

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.