diff options
Diffstat (limited to 'pkgs/misc/uboot/sheevaplug.nix')
-rw-r--r-- | pkgs/misc/uboot/sheevaplug.nix | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/pkgs/misc/uboot/sheevaplug.nix b/pkgs/misc/uboot/sheevaplug.nix new file mode 100644 index 000000000000..5c38f1d053bb --- /dev/null +++ b/pkgs/misc/uboot/sheevaplug.nix @@ -0,0 +1,58 @@ +{stdenv, fetchurl, unzip}: + +# We should enable this check once we have the cross target system information +# assert stdenv.system == "armv5tel-linux" || crossConfig == "armv5tel-linux"; + +# All this file is made for the Marvell Sheevaplug + +stdenv.mkDerivation { + name = "uboot-sheevaplug-3.4.19"; + + src = fetchurl { + url = "ftp://ftp.denx.de/pub/u-boot/u-boot-1.1.4.tar.bz2"; + sha256 = "19vp4rlikz7h72pqsjhgz7nmgjy4c6vabvxkw67wni70vy5ddy8s"; + }; + + srcAddon = fetchurl { + url = "http://www.plugcomputer.org/data/uboot/u-boot-3.4.19.zip"; + sha256 = "1wag1l6agr8dbnnfaw6bgcrwynwwgry4ihb3gp438699wmkmy91k"; + }; + + postUnpack = '' + mv u-boot-1.1.4 u-boot-3.4.19 + unzip -o $srcAddon + sourceRoot=u-boot-3.4.19 + ''; + + patches = [ ./gas220.patch ]; + + # Remove the cross compiler prefix, and add reiserfs support + configurePhase = '' + make mrproper + make rd88f6281Sheevaplug_config NBOOT=1 LE=1 + sed -i /CROSS_COMPILE/d include/config.mk + ''; + + buildPhase = '' + unset src + if test -z "$crossConfig"; then + make clean all + else + make clean all ARCH=arm CROSS_COMPILE=$crossConfig- + fi + ''; + + buildNativeInputs = [ unzip ]; + + dontStrip = true; + NIX_STRIP_DEBUG = false; + + installPhase = '' + ensureDir $out + cp u-boot-rd88f6281Sheevaplug_400db_nand.bin $out + cp u-boot u-boot.map $out + + ensureDir $out/bin + cp tools/{envcrc,mkimage} $out/bin + ''; +} |