mirror of
https://github.com/NixOS/nixos-hardware
synced 2024-12-26 03:29:44 +01:00
772de835d5
The buildUBoot function is intended for internal use and is dedicated for Raspberry Pi platforms. With latest nixpkgs it is causing build failure in older uboot(prior to v2023.07) due to a Raspberry Pi patch. Now this function is not used for the U-Boot build. More Information: https://github.com/NixOS/nixpkgs/pull/311614 https://github.com/NixOS/nixpkgs/pull/146634 Signed-off-by: Ganga Ram <Ganga.Ram@tii.ae>
90 lines
1.7 KiB
Nix
90 lines
1.7 KiB
Nix
{ stdenv
|
|
, lib
|
|
, bison
|
|
, dtc
|
|
, fetchgit
|
|
, flex
|
|
, gnutls
|
|
, libuuid
|
|
, ncurses
|
|
, openssl
|
|
, which
|
|
, perl
|
|
, buildPackages
|
|
}:
|
|
let
|
|
ubsrc = fetchgit {
|
|
url = "https://github.com/nxp-imx/uboot-imx.git";
|
|
# tag: "lf-6.1.55-2.2.0"
|
|
rev = "49b102d98881fc28af6e0a8af5ea2186c1d90a5f";
|
|
sha256 = "sha256-1j6X82DqezEizeWoSS600XKPNwrQ4yT0vZuUImKAVVA=";
|
|
};
|
|
in
|
|
(stdenv.mkDerivation {
|
|
pname = "imx8mq-uboot";
|
|
version = "2023.04";
|
|
src = ubsrc;
|
|
|
|
postPatch = ''
|
|
patchShebangs tools
|
|
patchShebangs scripts
|
|
'';
|
|
|
|
nativeBuildInputs = [
|
|
bison
|
|
flex
|
|
openssl
|
|
which
|
|
ncurses
|
|
libuuid
|
|
gnutls
|
|
openssl
|
|
perl
|
|
];
|
|
|
|
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
|
hardeningDisable = [ "all" ];
|
|
enableParallelBuilding = true;
|
|
|
|
makeFlags = [
|
|
"DTC=${lib.getExe buildPackages.dtc}"
|
|
"CROSS_COMPILE=${stdenv.cc.targetPrefix}"
|
|
];
|
|
|
|
extraConfig = ''
|
|
CONFIG_USE_BOOTCOMMAND=y
|
|
CONFIG_BOOTCOMMAND="setenv ramdisk_addr_r 0x45000000; setenv fdt_addr_r 0x44000000; run distro_bootcmd; "
|
|
CONFIG_CMD_BOOTEFI_SELFTEST=y
|
|
CONFIG_CMD_BOOTEFI=y
|
|
CONFIG_EFI_LOADER=y
|
|
CONFIG_BLK=y
|
|
CONFIG_PARTITIONS=y
|
|
CONFIG_DM_DEVICE_REMOVE=n
|
|
CONFIG_CMD_CACHE=y
|
|
'';
|
|
|
|
passAsFile = [ "extraConfig" ];
|
|
|
|
configurePhase = ''
|
|
runHook preConfigure
|
|
|
|
make imx8mq_evk_defconfig
|
|
cat $extraConfigPath >> .config
|
|
|
|
runHook postConfigure
|
|
'';
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
mkdir -p $out
|
|
cp ./u-boot-nodtb.bin $out
|
|
cp ./spl/u-boot-spl.bin $out
|
|
cp ./arch/arm/dts/imx8mq-evk.dtb $out
|
|
cp .config $out
|
|
|
|
runHook postInstall
|
|
'';
|
|
|
|
dontStrip = true;
|
|
})
|