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