diff options
author | nwhitehorn <nwhitehorn@FreeBSD.org> | 2011-05-12 15:03:17 +0000 |
---|---|---|
committer | nwhitehorn <nwhitehorn@FreeBSD.org> | 2011-05-12 15:03:17 +0000 |
commit | 71da39e09ceda78b4ab4d42e670f704f3fa61097 (patch) | |
tree | 136c1599746661276f60cfcaa774b8dd466afa41 /release | |
parent | f9ee184b6eda372188d5200c4050d276d4b40472 (diff) | |
download | FreeBSD-src-71da39e09ceda78b4ab4d42e670f704f3fa61097.zip FreeBSD-src-71da39e09ceda78b4ab4d42e670f704f3fa61097.tar.gz |
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.
Diffstat (limited to 'release')
-rw-r--r-- | release/powerpc/mkisoimages.sh | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/release/powerpc/mkisoimages.sh b/release/powerpc/mkisoimages.sh index 5c4b0df..64e6165 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 +<CHRP-BOOT> +<DESCRIPTION>FreeBSD/powerpc</DESCRIPTION> +<OS-NAME>FreeBSD</OS-NAME> +<BOOT-SCRIPT> +boot &device;:&partition;,\boot\loader &device;:0 +</BOOT-SCRIPT> +</CHRP-BOOT> +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 + |