uboot: rock64: use binary blob for TPL
This stops the kernel from crashing immediately after boot.
This commit is contained in:
parent
1f4bb8c61d
commit
ba3e470651
@ -1,4 +1,11 @@
|
|||||||
{ lib, buildUBoot, fetchFromGitHub, armTrustedFirmwareRK3328 }: buildUBoot rec {
|
{ lib, buildUBoot, fetchFromGitHub, armTrustedFirmwareRK3328 }: let
|
||||||
|
rkbin = fetchFromGitHub {
|
||||||
|
owner = "ayufan-rock64";
|
||||||
|
repo = "rkbin";
|
||||||
|
rev = "d8b90685b3d93c358936babdd854f1018bc6d35e";
|
||||||
|
sha256 = "0wrh3xa968sdp0j9n692jnv3071ymab719zc56vllba0aaabiaxr";
|
||||||
|
};
|
||||||
|
in buildUBoot rec {
|
||||||
name = "uboot-${defconfig}-${version}";
|
name = "uboot-${defconfig}-${version}";
|
||||||
version = "2018.01";
|
version = "2018.01";
|
||||||
|
|
||||||
@ -10,8 +17,10 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
extraMakeFlags = [ "BL31=${armTrustedFirmwareRK3328}/bl31.elf" "u-boot.itb" "all" ];
|
extraMakeFlags = [ "BL31=${armTrustedFirmwareRK3328}/bl31.elf" "u-boot.itb" "all" ];
|
||||||
|
|
||||||
|
# So close to being blob free... But U-Boot TPL causes the kernel to hang
|
||||||
postBuild = ''
|
postBuild = ''
|
||||||
./tools/mkimage -n rk3328 -T rksd -d tpl/u-boot-tpl.bin idbloader.img
|
./tools/mkimage -n rk3328 -T rksd -d ${rkbin}/rk33/rk3328_ddr_786MHz_v1.06.bin idbloader.img
|
||||||
cat spl/u-boot-spl.bin >> idbloader.img
|
cat spl/u-boot-spl.bin >> idbloader.img
|
||||||
dd if=u-boot.itb of=idbloader.img seek=448 conv=notrunc
|
dd if=u-boot.itb of=idbloader.img seek=448 conv=notrunc
|
||||||
'';
|
'';
|
||||||
@ -19,8 +28,10 @@
|
|||||||
defconfig = "rock64-rk3328_defconfig";
|
defconfig = "rock64-rk3328_defconfig";
|
||||||
filesToInstall = [ "spl/u-boot-spl.bin" "tpl/u-boot-tpl.bin" "u-boot.itb" "idbloader.img"];
|
filesToInstall = [ "spl/u-boot-spl.bin" "tpl/u-boot-tpl.bin" "u-boot.itb" "idbloader.img"];
|
||||||
|
|
||||||
extraMeta = {
|
extraMeta = with lib; {
|
||||||
maintainers = [ lib.maintainers.lopsided98 ];
|
maintainers = [ maintainers.lopsided98 ];
|
||||||
platforms = ["aarch64-linux"];
|
platforms = ["aarch64-linux"];
|
||||||
|
# Because of the TPL blob
|
||||||
|
license = licenses.unfreeRedistributableFirmware;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user