svn commit: r367995 - head/release/arm

Emmanuel Vadot manu at FreeBSD.org
Tue Nov 24 17:53:14 UTC 2020


Author: manu
Date: Tue Nov 24 17:53:13 2020
New Revision: 367995
URL: https://svnweb.freebsd.org/changeset/base/367995

Log:
  release: Merge the RPI2 and BEAGLEBONE image with the GENERICSD one
  
  Both RPI2 and BEAGLEBONE are still popular and used arm boards.
  Both u-boots can coexist as they are named differently and live in the
  fat partition.
  This leave us with only one image that can be used for both of those
  boards and all the other ones supported by FreeBSD provided that you
  install the correct u-boot on it.
  
  Reviewed by:	imp
  Relnotes:	yes
  Differential Revision:	https://reviews.freebsd.org/D27283

Deleted:
  head/release/arm/BEAGLEBONE.conf
  head/release/arm/RPI2.conf
Modified:
  head/release/arm/GENERICSD.conf

Modified: head/release/arm/GENERICSD.conf
==============================================================================
--- head/release/arm/GENERICSD.conf	Tue Nov 24 17:52:01 2020	(r367994)
+++ head/release/arm/GENERICSD.conf	Tue Nov 24 17:53:13 2020	(r367995)
@@ -6,11 +6,64 @@
 EMBEDDED_TARGET_ARCH="armv7"
 EMBEDDED_TARGET="arm"
 EMBEDDEDBUILD=1
+EMBEDDEDPORTS="sysutils/u-boot-beaglebone sysutils/u-boot-rpi2 sysutils/rpi-firmware"
 FAT_SIZE="50m -b 1m"
 FAT_TYPE="16"
 IMAGE_SIZE="3072M"
 KERNEL="GENERIC"
 MD_ARGS="-x 63 -y 255"
 NODOC=1
+BBB_UBOOT_DIR="/usr/local/share/u-boot/u-boot-beaglebone"
+RPI_UBOOT_DIR="/usr/local/share/u-boot/u-boot-rpi2"
+RPI_FIRMWARE_DIR="/usr/local/share/rpi-firmware"
+RPI_OL_DIR="${RPI_FIRMWARE_DIR}/overlays"
+OVERLAYS="mmc.dtbo"
 PART_SCHEME="MBR"
 export BOARDNAME="GENERICSD"
+
+arm_install_uboot_rpi2() {
+	UBOOT_FILES="u-boot.bin"
+	RPI_FIRMWARE_FILES="bootcode.bin config.txt \
+		fixup.dat fixup_cd.dat fixup_db.dat fixup_x.dat \
+		start.elf start_cd.elf start_db.elf start_x.elf \
+		bcm2709-rpi-2-b.dtb"
+	FATMOUNT="${DESTDIR%${KERNEL}}/fat"
+	chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}"
+	chroot ${CHROOTDIR} mount_msdosfs /dev/${mddev}s1 ${FATMOUNT}
+	for _UF in ${UBOOT_FILES}; do
+		chroot ${CHROOTDIR} cp -p ${RPI_UBOOT_DIR}/${_UF} \
+			${FATMOUNT}/${_UF}
+	done
+	for _UF in ${RPI_FIRMWARE_FILES}; do
+		chroot ${CHROOTDIR} cp -p ${RPI_FIRMWARE_DIR}/${_UF} \
+			${FATMOUNT}/${_UF}
+	done
+	chroot ${CHROOTDIR} mkdir -p ${FATMOUNT}/overlays
+	for _OL in ${OVERLAYS}; do
+		chroot ${CHROOTDIR} cp -p ${RPI_OL_DIR}/${_OL} \
+			${FATMOUNT}/overlays/${_OL}
+	done
+	sync
+	umount_loop ${CHROOTDIR}/${FATMOUNT}
+	chroot ${CHROOTDIR} rmdir ${FATMOUNT}
+	
+	return 0
+}
+
+arm_install_uboot_bbb() {
+	FATMOUNT="${DESTDIR%${KERNEL}}/fat"
+	chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}"
+	chroot ${CHROOTDIR} mount_msdosfs /dev/${mddev}s1 ${FATMOUNT}
+	chroot ${CHROOTDIR} cp -p ${BBB_UBOOT_DIR}/MLO ${FATMOUNT}/MLO
+	chroot ${CHROOTDIR} cp -p ${BBB_UBOOT_DIR}/u-boot.img ${FATMOUNT}/u-boot.img
+	sync
+	umount_loop ${CHROOTDIR}/${FATMOUNT}
+	chroot ${CHROOTDIR} rmdir ${FATMOUNT}
+
+	return 0
+}
+
+arm_install_uboot() {
+	arm_install_uboot_bbb
+	arm_install_uboot_rpi2
+}


More information about the svn-src-all mailing list