Author: manu
Date: Sun Jul 22 12:03:17 2018
New Revision: 336599
URL: https://svnweb.freebsd.org/changeset/base/336599

Log:
  release: Add arm_install_boot to install the commit boot bits
  
  This reduce the per-board arm_install_uboot to just install u-boot.
  While here remove the installation of rpi.dtb and rpi2.dtb as we load
  them from the UFS partition via ubldr.
  
  Reviewed by:  gjb, imp (older version)
  MFC after:    3 days
  Differential Revision:        https://reviews.freebsd.org/D16239

Modified:
  head/release/arm/BANANAPI.conf
  head/release/arm/BEAGLEBONE.conf
  head/release/arm/RPI-B.conf
  head/release/arm/RPI2.conf
  head/release/arm/WANDBOARD.conf
  head/release/arm64/PINE64.conf
  head/release/arm64/RPI3.conf
  head/release/release.sh
  head/release/tools/arm.subr

Modified: head/release/arm/BANANAPI.conf
==============================================================================
--- head/release/arm/BANANAPI.conf      Sun Jul 22 12:02:07 2018        
(r336598)
+++ head/release/arm/BANANAPI.conf      Sun Jul 22 12:03:17 2018        
(r336599)
@@ -19,22 +19,8 @@ export BOARDNAME="BANANAPI"
 arm_install_uboot() {
        UBOOT_DIR="/usr/local/share/u-boot/u-boot-bananapi"
        UBOOT_FILES="u-boot-sunxi-with-spl.bin"
-       FATMOUNT="${DESTDIR%${KERNEL}}/fat"
-       UFSMOUNT="${DESTDIR%${KERNEL}}/ufs"
        chroot ${CHROOTDIR} dd if=${UBOOT_DIR}/${UBOOT_FILES} \
                of=/dev/${mddev} bs=1k seek=8 conv=sync
-       chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}" "${UFSMOUNT}"
-       chroot ${CHROOTDIR} mount_msdosfs /dev/${mddev}s1 ${FATMOUNT}
-       chroot ${CHROOTDIR} cp ${UBOOT_DIR}/boot.scr ${FATMOUNT}/boot.scr
-       chroot ${CHROOTDIR} mount /dev/${mddev}s2a ${UFSMOUNT}
-       chroot ${CHROOTDIR} cp -p ${UFSMOUNT}/boot/ubldr.bin \
-               ${FATMOUNT}/ubldr.bin
-       chroot ${CHROOTDIR} touch ${UFSMOUNT}/firstboot
-       sync
-       umount_loop ${CHROOTDIR}/${FATMOUNT}
-       umount_loop ${CHROOTDIR}/${UFSMOUNT}
-       chroot ${CHROOTDIR} rmdir ${FATMOUNT}
-       chroot ${CHROOTDIR} rmdir ${UFSMOUNT}
        
        return 0
 }

Modified: head/release/arm/BEAGLEBONE.conf
==============================================================================
--- head/release/arm/BEAGLEBONE.conf    Sun Jul 22 12:02:07 2018        
(r336598)
+++ head/release/arm/BEAGLEBONE.conf    Sun Jul 22 12:03:17 2018        
(r336599)
@@ -19,21 +19,14 @@ export BOARDNAME="BEAGLEBONE"
 arm_install_uboot() {
        UBOOT_DIR="/usr/local/share/u-boot/u-boot-beaglebone"
        FATMOUNT="${DESTDIR%${KERNEL}}/fat"
-       UFSMOUNT="${DESTDIR%${KERNEL}}/ufs"
-       chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}" "${UFSMOUNT}"
+       chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}"
        chroot ${CHROOTDIR} mount_msdosfs /dev/${mddev}s1 ${FATMOUNT}
-       chroot ${CHROOTDIR} mount /dev/${mddev}s2a ${UFSMOUNT}
        chroot ${CHROOTDIR} cp -p ${UBOOT_DIR}/MLO ${FATMOUNT}/MLO
        chroot ${CHROOTDIR} cp -p ${UBOOT_DIR}/u-boot.img ${FATMOUNT}/u-boot.img
        chroot ${CHROOTDIR} cp ${UBOOT_DIR}/boot.scr ${FATMOUNT}/boot.scr
-       chroot ${CHROOTDIR} cp -p ${UFSMOUNT}/boot/ubldr.bin \
-               ${FATMOUNT}/ubldr.bin
-       chroot ${CHROOTDIR} touch ${UFSMOUNT}/firstboot
        sync
        umount_loop ${CHROOTDIR}/${FATMOUNT}
-       umount_loop ${CHROOTDIR}/${UFSMOUNT}
        chroot ${CHROOTDIR} rmdir ${FATMOUNT}
-       chroot ${CHROOTDIR} rmdir ${UFSMOUNT}
        
        return 0
 }

Modified: head/release/arm/RPI-B.conf
==============================================================================
--- head/release/arm/RPI-B.conf Sun Jul 22 12:02:07 2018        (r336598)
+++ head/release/arm/RPI-B.conf Sun Jul 22 12:03:17 2018        (r336599)
@@ -23,10 +23,8 @@ arm_install_uboot() {
                fixup.dat fixup_cd.dat fixup_db.dat fixup_x.dat \
                start.elf start_cd.elf start_db.elf start_x.elf"
        FATMOUNT="${DESTDIR%${KERNEL}}/fat"
-       UFSMOUNT="${DESTDIR%${KERNEL}}/ufs"
-       chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}" "${UFSMOUNT}"
+       chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}"
        chroot ${CHROOTDIR} mount_msdosfs /dev/${mddev}s1 ${FATMOUNT}
-       chroot ${CHROOTDIR} mount /dev/${mddev}s2a ${UFSMOUNT}
        for _UF in ${UBOOT_FILES}; do
                chroot ${CHROOTDIR} cp -p ${UBOOT_DIR}/${_UF} \
                        ${FATMOUNT}/${_UF}
@@ -35,17 +33,10 @@ arm_install_uboot() {
                chroot ${CHROOTDIR} cp -p ${RPI_FIRMWARE_DIR}/${_UF} \
                        ${FATMOUNT}/${_UF}
        done
-       chroot ${CHROOTDIR} cp -p ${UFSMOUNT}/boot/ubldr.bin \
-               ${FATMOUNT}/ubldr.bin
-       chroot ${CHROOTDIR} cp -p ${UFSMOUNT}/boot/dtb/rpi.dtb \
-               ${FATMOUNT}/rpi.dtb
        chroot ${CHROOTDIR} cp ${UBOOT_DIR}/boot.scr ${FATMOUNT}/boot.scr
-       chroot ${CHROOTDIR} touch ${UFSMOUNT}/firstboot
        sync
        umount_loop ${CHROOTDIR}/${FATMOUNT}
-       umount_loop ${CHROOTDIR}/${UFSMOUNT}
        chroot ${CHROOTDIR} rmdir ${FATMOUNT}
-       chroot ${CHROOTDIR} rmdir ${UFSMOUNT}
        
        return 0
 }

Modified: head/release/arm/RPI2.conf
==============================================================================
--- head/release/arm/RPI2.conf  Sun Jul 22 12:02:07 2018        (r336598)
+++ head/release/arm/RPI2.conf  Sun Jul 22 12:03:17 2018        (r336599)
@@ -24,10 +24,8 @@ arm_install_uboot() {
                fixup.dat fixup_cd.dat fixup_db.dat fixup_x.dat \
                start.elf start_cd.elf start_db.elf start_x.elf"
        FATMOUNT="${DESTDIR%${KERNEL}}/fat"
-       UFSMOUNT="${DESTDIR%${KERNEL}}/ufs"
-       chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}" "${UFSMOUNT}"
+       chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}"
        chroot ${CHROOTDIR} mount_msdosfs /dev/${mddev}s1 ${FATMOUNT}
-       chroot ${CHROOTDIR} mount /dev/${mddev}s2a ${UFSMOUNT}
        for _UF in ${UBOOT_FILES}; do
                chroot ${CHROOTDIR} cp -p ${UBOOT_DIR}/${_UF} \
                        ${FATMOUNT}/${_UF}
@@ -36,17 +34,10 @@ arm_install_uboot() {
                chroot ${CHROOTDIR} cp -p ${RPI_FIRMWARE_DIR}/${_UF} \
                        ${FATMOUNT}/${_UF}
        done
-       chroot ${CHROOTDIR} cp -p ${UFSMOUNT}/boot/ubldr.bin \
-               ${FATMOUNT}/ubldr.bin
-       chroot ${CHROOTDIR} cp -p ${UFSMOUNT}/boot/dtb/rpi2.dtb \
-               ${FATMOUNT}/rpi2.dtb
        chroot ${CHROOTDIR} cp ${UBOOT_DIR}/boot.scr ${FATMOUNT}/boot.scr
-       chroot ${CHROOTDIR} touch ${UFSMOUNT}/firstboot
        sync
        umount_loop ${CHROOTDIR}/${FATMOUNT}
-       umount_loop ${CHROOTDIR}/${UFSMOUNT}
        chroot ${CHROOTDIR} rmdir ${FATMOUNT}
-       chroot ${CHROOTDIR} rmdir ${UFSMOUNT}
        
        return 0
 }

Modified: head/release/arm/WANDBOARD.conf
==============================================================================
--- head/release/arm/WANDBOARD.conf     Sun Jul 22 12:02:07 2018        
(r336598)
+++ head/release/arm/WANDBOARD.conf     Sun Jul 22 12:03:17 2018        
(r336599)
@@ -19,22 +19,8 @@ export BOARDNAME="WANDBOARD"
 arm_install_uboot() {
        UBOOT_DIR="/usr/local/share/u-boot/u-boot-wandboard"
        UBOOT_FILES="u-boot.imx"
-       FATMOUNT="${DESTDIR%${KERNEL}}/fat"
-       UFSMOUNT="${DESTDIR%${KERNEL}}/ufs"
        chroot ${CHROOTDIR} dd if=${UBOOT_DIR}/${UBOOT_FILES} \
                of=/dev/${mddev} bs=512 seek=2 conv=sync
-       chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}" "${UFSMOUNT}"
-       chroot ${CHROOTDIR} mount_msdosfs /dev/${mddev}s1 ${FATMOUNT}
-       chroot ${CHROOTDIR} cp ${UBOOT_DIR}/boot.scr ${FATMOUNT}/boot.scr
-       chroot ${CHROOTDIR} mount /dev/${mddev}s2a ${UFSMOUNT}
-       chroot ${CHROOTDIR} cp -p ${UFSMOUNT}/boot/ubldr.bin \
-               ${FATMOUNT}/ubldr.bin
-       chroot ${CHROOTDIR} touch ${UFSMOUNT}/firstboot
-       sync
-       umount_loop ${CHROOTDIR}/${FATMOUNT}
-       umount_loop ${CHROOTDIR}/${UFSMOUNT}
-       chroot ${CHROOTDIR} rmdir ${FATMOUNT}
-       chroot ${CHROOTDIR} rmdir ${UFSMOUNT}
        
        return 0
 }

Modified: head/release/arm64/PINE64.conf
==============================================================================
--- head/release/arm64/PINE64.conf      Sun Jul 22 12:02:07 2018        
(r336598)
+++ head/release/arm64/PINE64.conf      Sun Jul 22 12:03:17 2018        
(r336599)
@@ -19,29 +19,8 @@ export BOARDNAME="PINE64"
 arm_install_uboot() {
        UBOOT_DIR="/usr/local/share/u-boot/u-boot-pine64"
        UBOOT_FILES="u-boot-sunxi-with-spl.bin"
-       FATMOUNT="${DESTDIR%${KERNEL}}fat"
-       UFSMOUNT="${DESTDIR%${KERNEL}}ufs"
        chroot ${CHROOTDIR} dd if=${UBOOT_DIR}/${UBOOT_FILES} \
                of=/dev/${mddev} bs=1k seek=8 conv=sync
-       chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}" "${UFSMOUNT}"
-       chroot ${CHROOTDIR} mount_msdosfs /dev/${mddev}s1 ${FATMOUNT}
-       chroot ${CHROOTDIR} mount /dev/${mddev}s2a ${UFSMOUNT}
-
-       BOOTFILES="$(chroot ${CHROOTDIR} \
-           env TARGET=${EMBEDDED_TARGET} TARGET_ARCH=${EMBEDDED_TARGET_ARCH} \
-           WITH_UNIFIED_OBJDIR=yes \
-           make -C ${WORLDDIR}/stand -V .OBJDIR)"
-       BOOTFILES="$(chroot ${CHROOTDIR} realpath ${BOOTFILES})"
-
-       chroot ${CHROOTDIR} mkdir -p ${FATMOUNT}/EFI/BOOT
-       chroot ${CHROOTDIR} cp -p ${BOOTFILES}/efi/loader/loader.efi \
-               ${FATMOUNT}/EFI/BOOT/bootaa64.efi
-       chroot ${CHROOTDIR} touch ${UFSMOUNT}/firstboot
-       sync
-       umount_loop ${CHROOTDIR}/${FATMOUNT}
-       umount_loop ${CHROOTDIR}/${UFSMOUNT}
-       chroot ${CHROOTDIR} rmdir ${FATMOUNT}
-       chroot ${CHROOTDIR} rmdir ${UFSMOUNT}
        
        return 0
 }

Modified: head/release/arm64/RPI3.conf
==============================================================================
--- head/release/arm64/RPI3.conf        Sun Jul 22 12:02:07 2018        
(r336598)
+++ head/release/arm64/RPI3.conf        Sun Jul 22 12:03:17 2018        
(r336599)
@@ -27,10 +27,8 @@ arm_install_uboot() {
                fixup_db.dat fixup_x.dat fixup.dat LICENCE.broadcom \
                start_cd.elf start_db.elf start_x.elf start.elf ${DTB}"
        FATMOUNT="${DESTDIR%${KERNEL}}fat"
-       UFSMOUNT="${DESTDIR%${KERNEL}}ufs"
-       chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}" "${UFSMOUNT}"
+       chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}"
        chroot ${CHROOTDIR} mount_msdosfs /dev/${mddev}s1 ${FATMOUNT}
-       chroot ${CHROOTDIR} mount /dev/${mddev}s2a ${UFSMOUNT}
        for _UF in ${UBOOT_FILES}; do
                chroot ${CHROOTDIR} cp -p ${UBOOT_DIR}/${_UF} \
                        ${FATMOUNT}/${_UF}
@@ -47,21 +45,9 @@ arm_install_uboot() {
                        ${FATMOUNT}/overlays/${_OL}
        done
 
-       BOOTFILES="$(chroot ${CHROOTDIR} \
-               env TARGET=${EMBEDDED_TARGET} 
TARGET_ARCH=${EMBEDDED_TARGET_ARCH} \
-               WITH_UNIFIED_OBJDIR=yes \
-               make -C ${WORLDDIR}/stand -V .OBJDIR)"
-       BOOTFILES="$(chroot ${CHROOTDIR} realpath ${BOOTFILES})"
-
-       chroot ${CHROOTDIR} mkdir -p ${FATMOUNT}/EFI/BOOT
-       chroot ${CHROOTDIR} cp -p ${BOOTFILES}/efi/loader/loader.efi \
-               ${FATMOUNT}/EFI/BOOT/bootaa64.efi
-       chroot ${CHROOTDIR} touch ${UFSMOUNT}/firstboot
        sync
        umount_loop ${CHROOTDIR}/${FATMOUNT}
-       umount_loop ${CHROOTDIR}/${UFSMOUNT}
        chroot ${CHROOTDIR} rmdir ${FATMOUNT}
-       chroot ${CHROOTDIR} rmdir ${UFSMOUNT}
        
        return 0
 }

Modified: head/release/release.sh
==============================================================================
--- head/release/release.sh     Sun Jul 22 12:02:07 2018        (r336598)
+++ head/release/release.sh     Sun Jul 22 12:03:17 2018        (r336599)
@@ -358,6 +358,21 @@ chroot_build_release() {
        return 0
 } # chroot_build_release()
 
+efi_boot_name()
+{
+       case $1 in
+               arm)
+                       echo "bootarm.efi"
+                       ;;
+               arm64)
+                       echo "bootaa64.efi"
+                       ;;
+               amd64)
+                       echo "bootx86.efi"
+                       ;;
+       esac
+}
+
 # chroot_arm_build_release(): Create arm SD card image.
 chroot_arm_build_release() {
        load_target_env
@@ -387,6 +402,7 @@ chroot_arm_build_release() {
                mdconfig -f ${IMGBASE##${CHROOTDIR}} ${MD_ARGS})
        arm_create_disk
        arm_install_base
+       arm_install_boot
        arm_install_uboot
        mdconfig -d -u ${mddev}
        chroot ${CHROOTDIR} rmdir ${DESTDIR}

Modified: head/release/tools/arm.subr
==============================================================================
--- head/release/tools/arm.subr Sun Jul 22 12:02:07 2018        (r336598)
+++ head/release/tools/arm.subr Sun Jul 22 12:03:17 2018        (r336599)
@@ -165,6 +165,36 @@ arm_install_base() {
        return 0
 }
 
+arm_install_boot() {
+       FATMOUNT="${DESTDIR%${KERNEL}}/fat"
+       UFSMOUNT="${DESTDIR%${KERNEL}}/ufs"
+       chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}" "${UFSMOUNT}"
+       chroot ${CHROOTDIR} mount_msdosfs /dev/${mddev}s1 ${FATMOUNT}
+       chroot ${CHROOTDIR} mount /dev/${mddev}s2a ${UFSMOUNT}
+
+       if [ "${EMBEDDED_TARGET}" == "arm" ]; then
+       chroot ${CHROOTDIR} cp -p ${UFSMOUNT}/boot/ubldr.bin \
+               ${FATMOUNT}/ubldr.bin
+       fi
+
+       BOOTFILES="$(chroot ${CHROOTDIR} \
+               env TARGET=${EMBEDDED_TARGET} 
TARGET_ARCH=${EMBEDDED_TARGET_ARCH} \
+               WITH_UNIFIED_OBJDIR=yes \
+               make -C ${WORLDDIR}/stand -V .OBJDIR)"
+       BOOTFILES="$(chroot ${CHROOTDIR} realpath ${BOOTFILES})"
+
+       chroot ${CHROOTDIR} mkdir -p ${FATMOUNT}/EFI/BOOT
+       chroot ${CHROOTDIR} cp -p ${BOOTFILES}/efi/loader/loader.efi \
+               ${FATMOUNT}/EFI/BOOT/$(efi_boot_name ${EMBEDDED_TARGET})
+
+       chroot ${CHROOTDIR} touch ${UFSMOUNT}/firstboot
+       sync
+       umount_loop ${CHROOTDIR}/${FATMOUNT}
+       umount_loop ${CHROOTDIR}/${UFSMOUNT}
+       chroot ${CHROOTDIR} rmdir ${FATMOUNT}
+       chroot ${CHROOTDIR} rmdir ${UFSMOUNT}
+}
+
 arm_install_uboot() {
        # Override in the arm/KERNEL.conf file.
 
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to