Skip to content

orangepi5-plus: u-boot: use mainline ATF; bump to v2026.01; drop funky CE config options#9261

Merged
igorpecovnik merged 1 commit intoarmbian:mainfrom
rpardini:pr/orangepi5-plus-u-boot-use-mainline-ATF-bump-to-v202601-drop-funky-CE-config-options
Jan 22, 2026
Merged

orangepi5-plus: u-boot: use mainline ATF; bump to v2026.01; drop funky CE config options#9261
igorpecovnik merged 1 commit intoarmbian:mainfrom
rpardini:pr/orangepi5-plus-u-boot-use-mainline-ATF-bump-to-v202601-drop-funky-CE-config-options

Conversation

@rpardini
Copy link
Member

@rpardini rpardini commented Jan 16, 2026

  • 🌱 also drop BOOT_SUPPORT_SPI & BOOT_SPI_RKSPI_LOADER as those are for vendor u-boot, not used here

Summary by CodeRabbit

  • Updates

    • Updated U-Boot version to 2026.01
    • Refined boot configuration for Orange Pi 5 Plus
  • Changes

    • Switched boot scenario to the new mainline/ATF approach
    • Removed SPI boot support options
    • Adjusted U-Boot binary mapping and write behavior for the board

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 16, 2026

📝 Walkthrough

Walkthrough

Board configuration for Orange Pi 5 Plus switched boot scenario to "tpl-blob-atf-mainline", removed SPI-specific variables, bumped mainline U-Boot/ATF from v2025.10 to v2026.01, replaced BL31 blob path with fixed bl31.elf, removed an SPI-specific helper, and inlined internal write_uboot_platform functions.

Changes

Cohort / File(s) Summary
Orange Pi 5 Plus boot config
config/boards/orangepi5-plus.conf
BOOT_SCENARIO changed to "tpl-blob-atf-mainline"; removed BOOT_SUPPORT_SPI and BOOT_SPI_RKSPI_LOADER; BOOTBRANCH and BOOTPATCHDIR updated from v2025.10 to v2026.01; UBOOT_TARGET_MAP now uses BL31=bl31.elf; removed post_config_uboot_target__extra_configs_for_rock5b_mainline_environment_in_spi(); added internal write_uboot_platform and write_uboot_platform_mtd definitions.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • igorpecovnik
  • amazingfate
  • paolosabatino
  • pyavitz

Poem

🐰 I nibble code beneath the moonlit tree,
bl31 tucked snug for booting free,
SPI paths vanish, tags move on,
mainline steps where blobs belong.
Hoppity hops—v2026, whee! 🥕

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the three main changes: switching to mainline ATF, bumping u-boot version to v2026.01, and removing SPI configuration options.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions bot added size/small PR with less then 50 lines 02 Milestone: First quarter release Needs review Seeking for review Hardware Hardware related like kernel, U-Boot, ... labels Jan 16, 2026
@rpardini rpardini marked this pull request as ready for review January 16, 2026 14:51
@EvilOlaf
Copy link
Member

I don't have a spare 5+ to test this.
Also would be good if, as mentioned, hdmirx on vendor is tested before and after this change.

@rpardini
Copy link
Member Author

hdmirx on vendor

won't work with this, most likely. rkbin blob is required to sneakily remap an interrupt for vendor hdmirx (which is incompatible with mainline hdmirx). not specific to opi either.

…y CE config options

- also drop BOOT_SUPPORT_SPI & BOOT_SPI_RKSPI_LOADER as those are for vendor u-boot, not used here
@rpardini rpardini force-pushed the pr/orangepi5-plus-u-boot-use-mainline-ATF-bump-to-v202601-drop-funky-CE-config-options branch from 944589e to bc7457c Compare January 17, 2026 21:10
@Marsupilami23
Copy link

Marsupilami23 commented Jan 17, 2026

Can confirm, patch works for Orange Pi 5 Plus using BRANCH="current" (6.18.6) and BOARD="orangepi5-plus".

@github-actions github-actions bot added the Ready to merge Reviewed, tested and ready for merge label Jan 17, 2026
@github-actions
Copy link
Contributor

✅ This PR has been reviewed and approved — all set for merge!

@github-actions github-actions bot removed the Needs review Seeking for review label Jan 17, 2026
@EvilOlaf
Copy link
Member

Does hdmirx in mainline work already? I mean as mentioned this would sacrifice this feature when being on vendor kernel which, sadly, has still some relevance in certain scenarios.

@rpardini
Copy link
Member Author

Does hdmirx in mainline work already?

Yes, since 6.18: torvalds/linux@ccc7f16 - but only with mainline ATF.

@rpardini
Copy link
Member Author

Either way, the point here is not hdmirx, but actually fixing the non-bootness problem reported by @Marsupilami23 (and confirmed fixed).

@EvilOlaf
Copy link
Member

right, then since confirmed working, lets do it

Copy link
Member

@EvilOlaf EvilOlaf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are a quite a bunch of other boards still using spl blobs. Should this be ajdusted to other boards too? Like rock5b, opi5 (without b or pro or plus or ultra or monsterxxl or whatever ridicoulos name comes up next)?

@rpardini
Copy link
Member Author

There are a quite a bunch of other boards still using spl blobs. Should this be ajdusted to other boards too? Like rock5b, opi5 (without b or pro or plus or ultra or monsterxxl or whatever ridicoulos name comes up next)?

I suggest this:

  • first priority is moving boards that use vendor u-boot to mainline (to get rid of the Jammy-only problem)
  • then ofc mainline kernel, with correctcly-described hdmirx
  • then boards that already use mainline u-boot for everything can be moved to mainline atf

this one I think checks all three.

@igorpecovnik igorpecovnik merged commit f45765e into armbian:main Jan 22, 2026
1 check passed
@igorpecovnik
Copy link
Member

build breaks on jammy and noble

@rpardini
Copy link
Member Author

build breaks on jammy and noble

Can't find jobs failing? care to share?

@igorpecovnik
Copy link
Member

igorpecovnik commented Jan 23, 2026

@rpardini
Copy link
Member Author

armbian/os/actions/runs/21265692496/job/61205323777

paste.armbian.com/ducotixefu

Oh I see, this is vendor u-boot. I was under the impression that this board only had mainline u-boot, even for vendor branch. Let me check.

@rpardini
Copy link
Member Author

@igorpecovnik fixed at #9287

There are a quite a bunch of other boards still using spl blobs. Should this be ajdusted to other boards too? Like rock5b, opi5 (without b or pro or plus or ultra or monsterxxl or whatever ridicoulos name comes up next)?

I suggest this:

  • first priority is moving boards that use vendor u-boot to mainline (to get rid of the Jammy-only problem)
  • then ofc mainline kernel, with correctcly-described hdmirx
  • then boards that already use mainline u-boot for everything can be moved to mainline atf

this one I think checks all three.

I was wrong about this. This board still has vendor u-boot for the vendor branch. Vendor hdmirx should work as long as vendor u-boot actually boot the machine. For users: keep in mind mixing blobs is problematic (SPI vs eMMC vs SD). When trying to boot current/edge (specially from SD card), ensure you don't have a leftover vendor stuff in eMMC/SPI.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

02 Milestone: First quarter release Hardware Hardware related like kernel, U-Boot, ... Ready to merge Reviewed, tested and ready for merge size/small PR with less then 50 lines

Development

Successfully merging this pull request may close these issues.

4 participants