From: Cédric Le Goater <clg@kaod.org>
Date: Sat, 22 Oct 2016 09:46:34 +0000 (+0200)
Subject: ppc: add skiboot firmware for the pnv platform
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=bcad45de6a0;p=qemu.git

ppc: add skiboot firmware for the pnv platform

This is the initial image of skiboot 5.3.7 (commit 762d0082) for
the PowerPC PowerNV (Non-Virtualized) platform. Built from
submodule.

Signed-off-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
---

diff --git a/.gitmodules b/.gitmodules
index 9da9ede261..ca323b4d87 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -31,3 +31,6 @@
 [submodule "roms/u-boot"]
 	path = roms/u-boot
 	url = git://git.qemu-project.org/u-boot.git
+[submodule "roms/skiboot"]
+	path = roms/skiboot
+	url = git://git.qemu.org/skiboot.git
diff --git a/MAINTAINERS b/MAINTAINERS
index b01fec0a7b..280ee1fcd2 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -656,6 +656,7 @@ F: include/hw/*/xics*
 F: pc-bios/spapr-rtas/*
 F: pc-bios/spapr-rtas.bin
 F: pc-bios/slof.bin
+F: pc-bios/skiboot.lid
 F: docs/specs/ppc-spapr-hcalls.txt
 F: docs/specs/ppc-spapr-hotplug.txt
 F: tests/spapr*
diff --git a/Makefile b/Makefile
index 3bcb0565b6..11f5154c81 100644
--- a/Makefile
+++ b/Makefile
@@ -421,7 +421,7 @@ qemu-icon.bmp qemu_logo_no_text.svg \
 bamboo.dtb petalogix-s3adsp1800.dtb petalogix-ml605.dtb \
 multiboot.bin linuxboot.bin linuxboot_dma.bin kvmvapic.bin \
 s390-ccw.img \
-spapr-rtas.bin slof.bin \
+spapr-rtas.bin slof.bin skiboot.lid \
 palcode-clipper \
 u-boot.e500
 else
diff --git a/pc-bios/README b/pc-bios/README
index 779192eb7c..47a913f9c7 100644
--- a/pc-bios/README
+++ b/pc-bios/README
@@ -42,3 +42,8 @@
   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
+
+- Skiboot (https://github.com/open-power/skiboot/) is an OPAL
+  (OpenPower Abstraction Layer) firmware for OpenPOWER systems. It can
+  run an hypervisor OS or simply a host OS on the "baremetal"
+  platform, also known as the PowerNV (Non-Virtualized) platform.
diff --git a/pc-bios/skiboot.lid b/pc-bios/skiboot.lid
new file mode 100644
index 0000000000..0e59a8280d
Binary files /dev/null and b/pc-bios/skiboot.lid differ
diff --git a/roms/Makefile b/roms/Makefile
index 88b3709d4d..b5e5a69e91 100644
--- a/roms/Makefile
+++ b/roms/Makefile
@@ -63,6 +63,7 @@ default:
 	@echo "  efirom         -- update nic roms (bios+efi, this needs"
 	@echo "                    the EfiRom utility from edk2 / tianocore)"
 	@echo "  slof           -- update slof.bin"
+	@echo "  skiboot        -- update skiboot.lid"
 	@echo "  u-boot.e500    -- update u-boot.e500"
 
 bios: build-seabios-config-seabios-128k build-seabios-config-seabios-256k
@@ -103,7 +104,7 @@ build-lgplvgabios:
 	$(MAKE) -C vgabios $(vgabios_targets)
 
 
-.PHONY: sgabios
+.PHONY: sgabios skiboot
 sgabios:
 	$(MAKE) -C sgabios
 	cp sgabios/sgabios.bin ../pc-bios
@@ -146,6 +147,10 @@ u-boot.e500:
 	$(powerpc_cross_prefix)strip u-boot/build.e500/u-boot -o \
 		../pc-bios/u-boot.e500
 
+skiboot:
+	$(MAKE) -C skiboot CROSS=$(powerpc64_cross_prefix)
+	cp skiboot/skiboot.lid ../pc-bios/skiboot.lid
+
 clean:
 	rm -rf seabios/.config seabios/out seabios/builds
 	$(MAKE) -C vgabios clean
@@ -155,3 +160,4 @@ clean:
 	$(MAKE) -C ipxe/src veryclean
 	$(MAKE) -C SLOF clean
 	rm -rf u-boot/build.e500
+	$(MAKE) -C skiboot clean
diff --git a/roms/skiboot b/roms/skiboot
new file mode 160000
index 0000000000..762d0082f1
--- /dev/null
+++ b/roms/skiboot
@@ -0,0 +1 @@
+Subproject commit 762d0082f18e4fb921a2d44a1051b02d8b0f6381