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
This commit is contained in:
parent
697db395dc
commit
bb9bd4fe8f
@ -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
|
||||
}
|
||||
|
@ -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
|
||||
}
|
||||
|
@ -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
|
||||
}
|
||||
|
@ -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
|
||||
}
|
||||
|
@ -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
|
||||
}
|
||||
|
@ -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
|
||||
}
|
||||
|
@ -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
|
||||
}
|
||||
|
@ -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}
|
||||
|
@ -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.
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user