I'm setting up gentoo on a quartz64 model-a (64-bit arm SBC), and I'm stumped on the bootloader. From what I've read, the only option is the u-boot bootloader. However, building u-boot for this processor (rk3566) requires a TPL binary. Here's what I've done:
First, some info on the board
www.pine64.org/quartz64a/
The pine64 folks do provide a small amount of information about setting up a bootloader
https://wiki.pine64.org/wiki/Quartz64_UEFI_with_U-Boot
Crucially, this does eventually lead to a github page for a u-boot build appropriate for this processor
https://github.com/Kwiboo/u-boot-rockchip.git
Okay, when I clone this page, setup the config for this processor, and then make
Code: Select all
make quart64-a-rk3566_defconfig
make -j 4 allCode: Select all
Image 'simple-bin' is missing external blobs and is non-functional: rockchip-tpl atf-bl31
/binman/simple-bin/mkimage/rockchip-tpl (rockchip-tpl):
An external TPL is required to initialize DRAM. Get the external TPL
binary and build with ROCKCHIP_TPL=/path/to/ddr.bin. One possible source
for the external TPL binary is https://github.com/rockchip-linux/rkbin.
/binman/simple-bin/fit/images/@atf-SEQ/atf-bl31 (atf-bl31):
See the documentation for your board. You may need to build ARM Trusted
Firmware and build with BL31=/path/to/bl31.bin
Image 'simple-bin' is missing optional external blobs but is still functional: tee-os
/binman/simple-bin/fit/images/@tee-SEQ/tee-os (tee-os):
See the documentation for your board. You may need to build Open Portable
Trusted Execution Environment (OP-TEE) and build with TEE=/path/to/tee.bin
Image 'simple-bin-spi' is missing external blobs and is non-functional: rockchip-tpl
Code: Select all
[*] Use external TPL binaryhttps://lore.kernel.org/all/20230214103 ... kwiboo.se/
The error message points toward this github for the required binary
https://github.com/rockchip-linux/rkbin
It's a little sparse on documentation, but it seems to contain several binaries that sound appropriate:
Code: Select all
rk35/rk3566_ddr_1056MHz_eyescan_v1.16.bin rk35/rk3566_ddr_1056MHz_v1.18.bin rk35/rk3566_ddr_920MHz_ultra_v1.10.bin
rk35/rk3566_ddr_1056MHz_ultra_v1.10.bin rk35/rk3566_ddr_528MHz_ultra_v1.10.bin rk35/rk3566_ddr_920MHz_v1.17.bin
rk35/rk3566_ddr_1056MHz_v1.17.bin rk35/rk3566_ddr_780MHz_ultra_v1.10.bin rk35/rk3566_ddr_920MHz_v1.18.bin
Code: Select all
dmidecode -t 17
# dmidecode 3.3
# No SMBIOS nor DMI entry point found, sorry.
https://github.com/u-boot/u-boot
Finally, here is an excellent wiki for the quartz64pro, including a pre-built image
https://wiki.gentoo.org/wiki/Embedded_H ... uartzPro64
However, the quartz64pro uses an rk3588 processor, which is a different option in the u-boot build, so the pre-built image doesn't work, and the u-boot github linked therein doesn't support the rk3566. It does support the rk3568, but the thread I linked above indicates that that has the same TPL problem.
Lastly, I've been working from an armbian image, which loads without a hitch, so I know that the hardware is okay.
I'd be grateful for any help!


