Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rockchip64:loaderimage: fix rk3308 uboot loader offset #7867

Merged
merged 1 commit into from
Feb 23, 2025

Conversation

TheSnowfield
Copy link
Collaborator

Description

The default u-boot offset "0x20000" passed to loaderimage causes rk3308 to fail to boot,
However, the rockchip blobs of rk3308/rk3308b seem to have a quirky loader address 0x600000 for u-boot.

This PR makes an exception for it.

@github-actions github-actions bot added size/small PR with less then 50 lines Needs review Seeking for review Hardware Hardware related like kernel, U-Boot, ... labels Feb 22, 2025
@paolosabatino
Copy link
Contributor

hmm, actual rk3308 devices (notably rockpi-s) seems to boot fine right now, but they use binman configuration. With binman, the burden is upon u-boot .dtsi files instead of armbian side; it is probably better than figgling around with the config scripts.

This should not affect existing rk3308 boards and indeed is a fix for those (future) boards which may want to use only-blobs boot scenario, even though I guess only-blobs is discouraged, since binman should be the way to go.

@TheSnowfield
Copy link
Collaborator Author

hmm, actual rk3308 devices (notably rockpi-s) seems to boot fine right now, but they use binman configuration. With binman, the burden is upon u-boot .dtsi files instead of armbian side; it is probably better than figgling around with the config scripts.

This should not affect existing rk3308 boards and indeed is a fix for those (future) boards which may want to use only-blobs boot scenario, even though I guess only-blobs is discouraged, since binman should be the way to go.

yes.. binman is the future, but it hides these rockchip binary defects, and developers have to spend their day tracking the problem. I guess this option can bring developers a quick and direct fix?

@paolosabatino
Copy link
Contributor

yes.. binman is the future, but it hides these rockchip binary defects, and developers have to spend their day tracking the problem. I guess this option can bring developers a quick and direct fix?

Actually I'm not really sure this is a "defect": each SoC has its own miniloader/trustos with a different address depending upon the DRAM base address. Actually I don't remember if the address is hardwired in the miniloader, in the trust os or the miniloader can instruct the Trust OS where in DRAM it should jump to find u-boot proper.

If you go with binman, rather than rockchip miniloader, you go with u-boot SPL and you should be essentially free of address contraints.

Anyway, as said, the way with the rockchip blobs evidently requires this loader address fix to work,

@TheSnowfield
Copy link
Collaborator Author

Actually I'm not really sure this is a "defect":

oh...Sorry, I mean the "different". :)

@paolosabatino paolosabatino added the Ready to merge Reviewed, tested and ready for merge label Feb 23, 2025
@paolosabatino paolosabatino self-requested a review February 23, 2025 14:33
@igorpecovnik igorpecovnik merged commit 7459551 into armbian:main Feb 23, 2025
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Hardware Hardware related like kernel, U-Boot, ... Needs review Seeking for review 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.

3 participants