From 2a2fbadf4f7c2195b6249aa9fd989994b347fd91 Mon Sep 17 00:00:00 2001 From: Nathan Whitehorn Date: Thu, 12 May 2011 15:03:17 +0000 Subject: [PATCH] Add (somewhat speculative) bootable CD support for PAPR/pSeries-type systems. In principle, FreeBSD should run on at least some of these already, and support for the remainder will hopefully show up eventually, so add this while I'm thinking about it. --- release/powerpc/mkisoimages.sh | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/release/powerpc/mkisoimages.sh b/release/powerpc/mkisoimages.sh index 5c4b0df391f2..64e616561d34 100644 --- a/release/powerpc/mkisoimages.sh +++ b/release/powerpc/mkisoimages.sh @@ -24,6 +24,7 @@ # into base-bits-dir as part of making the image. if [ "x$1" = "x-b" ]; then + # Apple boot code uudecode -o /tmp/hfs-boot-block.bz2 `dirname $0`/hfs-boot.bz2.uu bzip2 -d /tmp/hfs-boot-block.bz2 OFFSET=$(hd /tmp/hfs-boot-block | grep 'Loader START' | cut -f 1 -d ' ') @@ -31,6 +32,19 @@ if [ "x$1" = "x-b" ]; then dd if=$4/boot/loader of=/tmp/hfs-boot-block seek=$OFFSET conv=notrunc bootable="-o bootimage=macppc;/tmp/hfs-boot-block -o no-emul-boot" + + # pSeries/PAPR boot code + mkdir $4/ppc + cat > $4/ppc/bootinfo.txt << EOF + +FreeBSD/powerpc +FreeBSD + +boot &device;:&partition;,\boot\loader &device;:0 + + +EOF + shift else bootable="" @@ -48,3 +62,5 @@ echo "/dev/iso9660/`echo $LABEL | tr '[:lower:]' '[:upper:]'` / cd9660 ro 0 0" > makefs -t cd9660 $bootable -o rockridge -o label=$LABEL $NAME $* rm $1/etc/fstab rm /tmp/hfs-boot-block +rm -rf $1/ppc +