svn commit: r327456 - head/release/powerpc
Nathan Whitehorn
nwhitehorn at FreeBSD.org
Mon Jan 1 03:33:03 UTC 2018
Author: nwhitehorn
Date: Mon Jan 1 03:33:01 2018
New Revision: 327456
URL: https://svnweb.freebsd.org/changeset/base/327456
Log:
After removal of loader.ps3, change petitboot configuration in release media
to directly kexec the kernel. Unlike the old loader.ps3 code, this also works
on PowerNV systems, which also use petitboot.
MFC after: 1 month
Modified:
head/release/powerpc/mkisoimages.sh
Modified: head/release/powerpc/mkisoimages.sh
==============================================================================
--- head/release/powerpc/mkisoimages.sh Mon Jan 1 00:20:35 2018 (r327455)
+++ head/release/powerpc/mkisoimages.sh Mon Jan 1 03:33:01 2018 (r327456)
@@ -23,20 +23,38 @@
# extra-bits-dir, if provided, contains additional files to be merged
# into base-bits-dir as part of making the image.
+
if [ "$1" = "-b" ]; then
+ bootable=1
+ shift
+else
+ bootable=""
+fi
+
+if [ $# -lt 3 ]; then
+ echo "Usage: $0 [-b] image-label image-name base-bits-dir [extra-bits-dir]"
+ exit 1
+fi
+
+LABEL=`echo "$1" | tr '[:lower:]' '[:upper:]'`; shift
+NAME="$1"; shift
+
+if [ -n "$bootable" ]; then
+ echo "Building bootable disc"
+
# 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 ' ')
OFFSET=0x$(echo 0x$OFFSET | awk '{printf("%x\n",$1/512);}')
- dd if="$4/boot/loader" of=/tmp/hfs-boot-block seek=$OFFSET conv=notrunc
+ dd if="$1/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 -p "$4/ppc/chrp"
- cp "$4/boot/loader" "$4/ppc/chrp"
- cat > "$4/ppc/bootinfo.txt" << EOF
+ mkdir -p "$1/ppc/chrp"
+ cp "$1/boot/loader" "$1/ppc/chrp"
+ cat > "$1/ppc/bootinfo.txt" << EOF
<chrp-boot>
<description>FreeBSD Install</description>
<os-name>FreeBSD</os-name>
@@ -45,21 +63,9 @@ if [ "$1" = "-b" ]; then
EOF
bootable="$bootable -o chrp-boot"
- # Playstation 3 boot code
- echo "FreeBSD Install='/boot/loader.ps3'" > "$4/etc/kboot.conf"
-
- shift
-else
- bootable=""
+ # Petitboot config for PS3/PowerNV
+ echo FreeBSD Install=\'/boot/kernel/kernel vfs.root.mountfrom=cd9660:/dev/iso9660/$LABEL\' > "$1/etc/kboot.conf"
fi
-
-if [ $# -lt 3 ]; then
- echo "Usage: $0 [-b] image-label image-name base-bits-dir [extra-bits-dir]"
- exit 1
-fi
-
-LABEL=`echo "$1" | tr '[:lower:]' '[:upper:]'`; shift
-NAME="$1"; shift
publisher="The FreeBSD Project. https://www.FreeBSD.org/"
echo "/dev/iso9660/$LABEL / cd9660 ro 0 0" > "$1/etc/fstab"
More information about the svn-src-head
mailing list