]> git.proxmox.com Git - mirror_qemu.git/commitdiff
PPC: Add u-boot firmware for e500
authorAlexander Graf <agraf@suse.de>
Sun, 19 Jan 2014 23:25:40 +0000 (00:25 +0100)
committerAlexander Graf <agraf@suse.de>
Mon, 16 Jun 2014 11:24:35 +0000 (13:24 +0200)
This adds a special build of u-boot tailored for the e500 platforms we
emulate. It is based on the current version of upstream u-boot which
contains all the code necessary to drive our QEMU provided machines.

Signed-off-by: Alexander Graf <agraf@suse.de>
.gitmodules
configure
pc-bios/README
pc-bios/u-boot.e500 [new file with mode: 0755]
roms/Makefile
roms/u-boot [new submodule]

index 444c24a993fadfb3e9c323ea6a04f77b94b0e47c..9da9ede26161bc5c6f12552b55bc54f55bb1e839 100644 (file)
@@ -28,3 +28,6 @@
 [submodule "dtc"]
        path = dtc
        url = git://git.qemu-project.org/dtc.git
+[submodule "roms/u-boot"]
+       path = roms/u-boot
+       url = git://git.qemu-project.org/u-boot.git
index dfbe75ee75dd935c7b0591c68cdeca58c674a410..9d5018982f1ed4a2f9f7a3561488e28cda63e06f 100755 (executable)
--- a/configure
+++ b/configure
@@ -5213,6 +5213,7 @@ for bios_file in \
     $source_path/pc-bios/*.dtb \
     $source_path/pc-bios/*.img \
     $source_path/pc-bios/openbios-* \
+    $source_path/pc-bios/u-boot.* \
     $source_path/pc-bios/palcode-*
 do
     FILES="$FILES pc-bios/`basename $bios_file`"
index 4381718e1525247d19c1c5193d82d836c37239ed..49cdacfaa50fc0933ff71c213efd169707474347 100644 (file)
@@ -41,3 +41,8 @@
 
 - The sources for the Alpha palcode image is available from:
   git://github.com/rth7680/qemu-palcode.git
+
+- The u-boot binary for e500 comes from the upstream denx u-boot project where
+  it was compiled using the qemu-ppce500 target.
+  A git mirror is available at: git://git.qemu-project.org/u-boot.git
+  The hash used to compile the current version is: 2072e72
diff --git a/pc-bios/u-boot.e500 b/pc-bios/u-boot.e500
new file mode 100755 (executable)
index 0000000..bdb2a5e
Binary files /dev/null and b/pc-bios/u-boot.e500 differ
index 2721b02b13aa34aaa950df3c219a89d056debefd..610b5346285b4560a45d81bfd1fb27659222fccd 100644 (file)
@@ -31,6 +31,7 @@ find-cross-gcc = $(firstword $(wildcard $(patsubst %ld,%gcc,$(call find-cross-ld
 find-cross-prefix = $(subst gcc,,$(notdir $(call find-cross-gcc,$(1))))
 
 powerpc64_cross_prefix := $(call find-cross-prefix,powerpc64)
+powerpc_cross_prefix := $(call find-cross-prefix,powerpc)
 x86_64_cross_prefix := $(call find-cross-prefix,x86_64)
 
 #
@@ -55,6 +56,7 @@ default:
        @echo "  efirom         -- update nic roms (bios+efi, this needs"
        @echo "                    the EfiRom utility from edk2 / tianocore)"
        @echo "  slof           -- update slof.bin"
+       @echo "  u-boot.e500    -- update u-boot.e500"
 
 bios: build-seabios-config-seabios-128k build-seabios-config-seabios-256k
        cp seabios/builds/seabios-128k/bios.bin ../pc-bios/bios.bin
@@ -132,6 +134,12 @@ slof:
        $(MAKE) -C SLOF CROSS=$(powerpc64_cross_prefix) qemu
        cp SLOF/boot_rom.bin ../pc-bios/slof.bin
 
+u-boot.e500:
+       $(MAKE) -C u-boot O=build.e500 qemu-ppce500_config
+       $(MAKE) -C u-boot CROSS_COMPILE=$(powerpc_cross_prefix) \
+               O=build.e500
+       $(powerpc_cross_prefix)strip u-boot/build.e500/u-boot -o \
+               ../pc-bios/u-boot.e500
 
 clean:
        rm -rf seabios/.config seabios/out seabios/builds
@@ -141,3 +149,4 @@ clean:
        rm -f sgabios/.depend
        $(MAKE) -C ipxe/src veryclean
        $(MAKE) -C SLOF clean
+       rm -rf u-boot/build.e500
diff --git a/roms/u-boot b/roms/u-boot
new file mode 160000 (submodule)
index 0000000..2072e72
--- /dev/null
@@ -0,0 +1 @@
+Subproject commit 2072e7262965bb48d7fffb1e283101e6ed8b21a8