Skip to content

uboot: Add U-Boot bootloader support for qcm6490 & qcs615 platforms#1473

Merged
lumag merged 6 commits intoqualcomm-linux:masterfrom
aswinm94:uboot
Mar 5, 2026
Merged

uboot: Add U-Boot bootloader support for qcm6490 & qcs615 platforms#1473
lumag merged 6 commits intoqualcomm-linux:masterfrom
aswinm94:uboot

Conversation

@aswinm94
Copy link
Contributor

@aswinm94 aswinm94 commented Feb 3, 2026

Integrate U-Boot as an alternative bootloader to UEFI with conditional selection via KAS configuration. Changes include:

  • Add u-boot-qcom.yml KAS config for bootloader selection
  • Add u-boot-qcom-next recipe sourcing uboot from Qualcomm Linux repo
    • Overrides default u-boot recipe from oe-core layer
    • Builds from git://github.com/qualcomm-linux/u-boot.git
    • Integrates qtestsign for signing (u-boot.elf → u-boot.mbn)
  • Add qcom-partition-conf bbappend for automatic XML modification
  • Conditionally replace uefi.elf with u-boot.mbn in partition XMLs

preferred bootloader can be switched between UEFI and U-Boot by changing the KAS configuration file.

@ricardosalveti ricardosalveti requested a review from b49020 February 4, 2026 00:39
@ricardosalveti
Copy link
Contributor

Please go back to each individual comment and reply / resolve if indeed fixed, explaining the reason for the new updated version.

@aswinm94 aswinm94 force-pushed the uboot branch 2 times, most recently from c40f9a0 to 62a534b Compare February 6, 2026 13:37
@aswinm94 aswinm94 force-pushed the uboot branch 2 times, most recently from efc47c2 to 0ee36ba Compare February 13, 2026 11:54
@aswinm94 aswinm94 requested a review from lumag February 16, 2026 11:48
Add u-boot-qcom recipe that overrides default u-boot recipe from oe-core layer.
Builds from git://github.com/qualcomm-linux/u-boot.git.

Uses qtestsign for signing and converting u-boot.elf to u-boot.mbn format
required by Qualcomm bootloaders.

Signed-off-by: Aswin Murugan <aswin.murugan@oss.qualcomm.com>
quaresmajose
quaresmajose previously approved these changes Mar 3, 2026
@aswinm94
Copy link
Contributor Author

aswinm94 commented Mar 3, 2026

And this can't be merged because of the conflict :-(

Resolved the conflict

@lumag, Could you please help in merging the change

@aswinm94
Copy link
Contributor Author

aswinm94 commented Mar 3, 2026

@koenkooi , all requested changes have been implemented.
Could you please re‑review the PR and change your review status to Approve if everything looks good?

aswinm94 added 4 commits March 4, 2026 12:08
…inary as uefi.elf

Implement bootloader selection logic to install the correct bootloader binary
as uefi.elf during image creation. When U-Boot is the preferred provider,
copy u-boot.mbn as uefi.elf instead of using the default UEFI bootloader.

- Default: bootloader_file="uefi.elf" (standard UEFI bootloader)
- U-Boot:  bootloader_file="u-boot.mbn" when u-boot-qcom* is selected
- Always install the selected bootloader as uefi.elf in the final image

Signed-off-by: Aswin Murugan <aswin.murugan@oss.qualcomm.com>
Enable UBOOT_CONFIG for the rb3gen2-core-kit machine to support U-Boot as
the bootloader. Define the U-Boot configuration to be used by the QCM6490
SoC, selecting qcm6490_defconfig for platform-specific initialization.

Signed-off-by: Aswin Murugan <aswin.murugan@oss.qualcomm.com>
Enable UBOOT_CONFIG for the qcs615-ride machine to support U-Boot as the
bootloader. Define the U-Boot configuration to be used by the QCS615 SoC,
selecting qcom_qcs615_defconfig for platform-specific initialization.

Signed-off-by: Aswin Murugan <aswin.murugan@oss.qualcomm.com>
Set PREFERRED_PROVIDER_virtual/bootloader to u-boot-qcom in the CI
configuration to enable U-Boot instead of UEFI

Signed-off-by: Aswin Murugan <aswin.murugan@oss.qualcomm.com>
@github-actions
Copy link

github-actions bot commented Mar 4, 2026

Test run workflow

Test jobs for commit 7798682

Test qcs615-adp-air qcs6490 qcs8300 qcs9100 qcs9100-rb8 qrb2210-rb1
boot pass pass pass pass pass pass

All jobs summary

Job ID Device State Health
153779 qrb2210-rb1 Finished Complete
153762 qcs6490 Finished Complete
153764 qcs9100 Finished Complete
153763 qcs8300 Finished Complete
153766 qcs9100-rb8 Finished Incomplete
153776 qcs9100-rb8 Finished Complete
153777 qcs6490 Finished Complete
153782 qrb2210-rb1 Finished Complete
153769 qcs8300 Finished Complete
153785 qcs615-adp-air Finished Complete
153783 qcs9100 Finished Complete
153778 qcs9100-rb8 Finished Complete
153775 qcs615-adp-air Finished Complete
153768 qcs9100 Finished Complete
153774 qcs615-adp-air Finished Complete
153781 qcs8300 Finished Complete
153770 qcs615-adp-air Finished Complete
153772 qcs9100-rb8 Finished Complete
153771 qrb2210-rb1 Finished Complete
153780 qcs9100 Finished Complete
153767 qcs8300 Finished Complete
153784 qcs6490 Finished Complete
153765 qrb2210-rb1 Finished Complete
153773 qcs6490 Finished Complete

@test-reporting-app
Copy link

test-reporting-app bot commented Mar 4, 2026

Test Results

   45 files   -   1    192 suites   - 13   3h 23m 5s ⏱️ - 51m 15s
   45 tests ±  0     40 ✅ ±  0   0 💤 ±0  5 ❌ ±0 
1 811 runs   - 223  1 794 ✅  - 216  11 💤  - 4  6 ❌  - 3 

For more details on these failures, see this check.

Results for commit b74f751. ± Comparison against base commit bea8c58.

♻️ This comment has been updated with latest results.

@github-actions
Copy link

github-actions bot commented Mar 4, 2026

Test run workflow

Test jobs for commit 7798682

Test qcs615-adp-air qcs6490 qcs8300 qcs9100 qcs9100-rb8 qrb2210-rb1
AudioRecord pass pass pass pass pass pass
BT_FW_KMD_Service pass pass pass pass pass pass
BT_ON_OFF ⚠️ skip pass pass pass pass pass
BT_SCAN pass pass pass pass pass pass
CPUFreq_Validation pass pass pass pass pass pass
DSP_AudioPD pass pass pass pass pass pass
Ethernet ⚠️ skip 🚫 ⚠️ skip ⚠️ skip pass ⚠️ skip
Interrupts pass pass pass pass pass pass
OpenCV pass pass pass pass pass pass
WiFi_Firmware_Driver pass pass pass pass pass pass
WiFi_OnOff ⚠️ skip pass pass pass pass pass
adsp_remoteproc pass pass pass pass pass pass
boot pass pass pass pass pass pass
cdsp_remoteproc pass pass pass pass pass ⚠️ skip
hotplug pass pass pass pass pass pass
irq pass pass pass pass pass pass

All jobs summary

Job ID Device State Health
153794 qcs9100 Finished Complete
153792 qcs9100-rb8 Finished Complete
153779 qrb2210-rb1 Finished Complete
153802 qcs6490 Finished Complete
153762 qcs6490 Finished Complete
153764 qcs9100 Finished Complete
153806 qcs615-adp-air Running Unknown
153801 qrb2210-rb1 Finished Complete
153799 qcs615-adp-air Running Unknown
153763 qcs8300 Finished Complete
153805 qcs8300 Finished Complete
153810 qrb2210-rb1 Finished Complete
153807 qcs9100-rb8 Finished Complete
153766 qcs9100-rb8 Finished Incomplete
153795 qcs9100 Finished Complete
153776 qcs9100-rb8 Finished Complete
153777 qcs6490 Finished Complete
153782 qrb2210-rb1 Finished Complete
153769 qcs8300 Finished Complete
153798 qcs615-adp-air Finished Complete
153789 qcs9100-rb8 Finished Complete
153785 qcs615-adp-air Finished Complete
153783 qcs9100 Finished Complete
153791 qcs615-adp-air Finished Complete
153778 qcs9100-rb8 Finished Complete
153775 qcs615-adp-air Finished Complete
153768 qcs9100 Finished Complete
153804 qcs6490 Finished Complete
153774 qcs615-adp-air Finished Complete
153808 qrb2210-rb1 Finished Complete
153781 qcs8300 Finished Complete
153788 qcs6490 Finished Complete
153796 qcs9100 Finished Complete
153793 qcs8300 Finished Complete
153811 qcs6490 Finished Complete
153770 qcs615-adp-air Finished Complete
153772 qcs9100-rb8 Finished Complete
153771 qrb2210-rb1 Finished Complete
153790 qcs8300 Finished Complete
153780 qcs9100 Finished Complete
153803 qcs9100-rb8 Finished Complete
153767 qcs8300 Finished Complete
153797 qrb2210-rb1 Finished Complete
153800 qcs8300 Finished Complete
153809 qcs9100 Finished Complete
153784 qcs6490 Finished Complete
153786 qcs9100-rb8 Finished Complete
153765 qrb2210-rb1 Finished Complete
153773 qcs6490 Finished Complete

…e-kit

Extend the GitHub workflow to build U-Boot variants with the
linux-qcom-6.18 kernel for the qcs615-ride and rb3gen2-core-kit
machines. This enables U-Boot bootloader support, with additional
machines to be added as support expands.

Signed-off-by: Aswin Murugan <aswin.murugan@oss.qualcomm.com>
@github-actions
Copy link

github-actions bot commented Mar 4, 2026

Test run workflow

Test jobs for commit b74f751

Test qcs615-adp-air qcs6490 qcs8300 qcs9100 qcs9100-rb8 qrb2210-rb1
boot pass pass pass pass pass pass

All jobs summary

Job ID Device State Health
154426 qcs9100-rb8 Finished Complete
154424 qcs8300 Finished Complete
154428 qcs8300 Finished Complete
154423 qcs8300 Finished Complete
154436 qcs6490 Finished Complete
154425 qcs9100 Finished Complete
154440 qrb2210-rb1 Finished Complete
154442 qcs9100-rb8 Finished Complete
154432 qcs9100 Finished Complete
154429 qcs6490 Finished Complete
154433 qcs6490 Finished Complete
154434 qcs615-adp-air Submitted Unknown
154420 qrb2210-rb1 Finished Complete
154435 qcs9100-rb8 Finished Complete
154430 qcs9100 Finished Complete
154427 qrb2210-rb1 Finished Complete
154441 qcs615-adp-air Submitted Unknown
154439 qcs615-adp-air Submitted Unknown
154422 qrb2210-rb1 Finished Complete
154419 qcs6490 Finished Complete
154421 qcs9100-rb8 Finished Complete
154438 qcs9100 Finished Complete
154431 qcs8300 Finished Complete
154437 qcs615-adp-air Submitted Unknown

@github-actions
Copy link

github-actions bot commented Mar 4, 2026

Test run workflow

Test jobs for commit b74f751

Test qcs615-adp-air qcs6490 qcs8300 qcs9100 qcs9100-rb8 qrb2210-rb1
AudioRecord pass pass pass pass pass pass
BT_FW_KMD_Service fail pass pass pass fail pass
BT_ON_OFF ⚠️ skip pass pass pass pass pass
BT_SCAN ⚠️ skip pass pass pass ⚠️ skip pass
CPUFreq_Validation pass pass pass pass pass pass
DSP_AudioPD pass pass pass pass pass pass
Ethernet ⚠️ skip 🚫 pass ⚠️ skip pass ⚠️ skip
Interrupts pass pass pass pass pass pass
OpenCV pass pass pass pass pass pass
WiFi_Firmware_Driver pass pass pass pass pass pass
WiFi_OnOff ⚠️ skip pass pass pass pass pass
adsp_remoteproc pass pass pass pass pass pass
boot pass pass pass pass pass pass
cdsp_remoteproc pass pass pass pass pass ⚠️ skip
hotplug pass pass pass pass pass pass
irq pass pass pass pass pass pass

All jobs summary

Job ID Device State Health
154470 qcs8300 Finished Incomplete
154426 qcs9100-rb8 Finished Complete
154467 qcs8300 Finished Complete
154459 qcs615-adp-air Running Unknown
154424 qcs8300 Finished Complete
154463 qcs8300 Finished Complete
154428 qcs8300 Finished Complete
154423 qcs8300 Finished Complete
154455 qcs9100-rb8 Finished Complete
154436 qcs6490 Finished Complete
154425 qcs9100 Finished Complete
154440 qrb2210-rb1 Finished Complete
154442 qcs9100-rb8 Finished Complete
154432 qcs9100 Finished Complete
154451 qcs615-adp-air Finished Complete
154464 qcs9100-rb8 Finished Complete
154429 qcs6490 Finished Complete
154433 qcs6490 Finished Complete
154444 qcs615-adp-air Finished Complete
154457 qcs615-adp-air Running Unknown
154434 qcs615-adp-air Finished Complete
154461 qcs8300 Finished Complete
154443 qcs615-adp-air Finished Complete
154420 qrb2210-rb1 Finished Complete
154456 qrb2210-rb1 Finished Complete
154450 qcs6490 Finished Complete
154447 qcs9100-rb8 Finished Complete
154435 qcs9100-rb8 Finished Complete
154430 qcs9100 Finished Complete
154453 qcs9100 Finished Complete
154460 qcs9100-rb8 Finished Incomplete
154446 qcs615-adp-air Finished Complete
154427 qrb2210-rb1 Finished Complete
154441 qcs615-adp-air Finished Complete
154458 qcs9100 Finished Complete
154449 qcs6490 Finished Complete
154462 qrb2210-rb1 Finished Complete
154439 qcs615-adp-air Finished Complete
154468 qcs9100 Finished Complete
154448 qcs9100 Finished Complete
154422 qrb2210-rb1 Finished Complete
154419 qcs6490 Finished Complete
154421 qcs9100-rb8 Finished Complete
154438 qcs9100 Finished Complete
154454 qrb2210-rb1 Finished Complete
154452 qcs615-adp-air Finished Complete
154445 qcs615-adp-air Finished Complete
154431 qcs8300 Finished Complete
154469 qrb2210-rb1 Finished Complete
154437 qcs615-adp-air Finished Complete
154466 qcs6490 Finished Complete
154465 qcs6490 Finished Complete

@lumag lumag requested a review from quaresmajose March 5, 2026 03:58
@lumag
Copy link
Contributor

lumag commented Mar 5, 2026

@koenkooi could you please review? Your "request for changes" is otherwise lingering.

@lumag lumag merged commit 57cbaaa into qualcomm-linux:master Mar 5, 2026
222 of 341 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants