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"
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to