-
Notifications
You must be signed in to change notification settings - Fork 1.1k
plat: rpi5: add basic Raspberry Pi 5 support #7577
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
Conversation
|
@spark404 thanks for following up on this. Please incorporate the fixes into @lorc's commits, adding yourself as a co-developer i.e., Thanks! |
79dbc2e to
2a8b0af
Compare
2a8b0af to
8ff6abe
Compare
|
@jforissier I updated the commits, it this what you mean? And could you enable the CI build for this PR? |
Almost ;) you should put @lorc's Signed-off-by: first since he is the main author.
Done. |
8ff6abe to
edac25c
Compare
VA spaces have no valid PA addresses stored in memory map, so they are not valid return values for core_mmu_get_type_by_pa() function. This issues was discovered when OP-TEE tried to access a device tree that was stored at the very beginning of physical address space. In may case it had PA address 0x112C0, which was "covered" by RES_VASPACE: D/TC:0 0 dump_mmap_table:838 type RES_VASPACE va 0x1d800000..0x1e1fffff pa 0x00000000..0x009fffff size 0x00a00000 (pgdir) Signed-off-by: Volodymyr Babchuk <[email protected]> Acked-by: Jerome Forissier <[email protected]>
edac25c to
fea1e16
Compare
|
@jforissier Could you kickoff the CI build again? Rebased on master so the new CI changes are now in this branch. |
fea1e16 to
815b7c5
Compare
RPi5 is based on new BCM2712 SoC which is based on quad Cortex-A76. BCM2712 still does not provide secure memory so we are free to locate OP-TEE anything we want. It would be most beneficial to locate OP-TEE right after TF-A, at address 0x80000, but RPi5 loader places kernel there and it's location can't be changed. According to PCB silkscreen, RPi5 boards can have 1GB, 2GB, 4GB or 8GB of memory. To be compatible with any variant, OP-TEE is placed close to the end of the first gigabyte. BCM2712 uses PL011 as debug UART so we enable its driver. According to specification, BCM2712 includes cryptography extensions, but this basic port does not enable them. As there is no way to load OP-TEE image into memory during boot process, TF-A with OPTEE_ALLOW_SMC_LOAD=1 option should be used. In this case OP-TEE can be loaded via Linux kernel or U-Boot. Signed-off-by: Volodymyr Babchuk <[email protected]> Co-developed-by: Hugo Trippaers <[email protected]> Signed-off-by: Hugo Trippaers <[email protected]> Acked-by: Jerome Forissier <[email protected]>
815b7c5 to
63f28b2
Compare
|
@jforissier sorry for all the extra back and forth, but I think I got checkpatch happy as well now. |
This is new PR with the same changes as #6854.
References:
Test status (xtest):