324cdd9320
The recent rpi-firmware update renamed "0" to "zero" in the RPi0 DTB filename It also included the components needed to boot the RPi4, so install those now -- interested parties can install sysutils/u-boot-rpi4 and copy config_rpi4.txt to config.txt on the FAT partition in order to boot the board. Do note that we currently don't support ethernet/usb/pci. Reviewed by: manu MFC after: 3 days
52 lines
1.4 KiB
Bash
52 lines
1.4 KiB
Bash
#!/bin/sh
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
EMBEDDED_TARGET_ARCH="armv6"
|
|
EMBEDDED_TARGET="arm"
|
|
EMBEDDEDBUILD=1
|
|
EMBEDDEDPORTS="sysutils/u-boot-rpi sysutils/rpi-firmware"
|
|
FAT_SIZE="50m"
|
|
FAT_TYPE="16"
|
|
IMAGE_SIZE="3072M"
|
|
KERNEL="RPI-B"
|
|
MD_ARGS="-x 63 -y 255"
|
|
NODOC=1
|
|
UBOOT_DIR="/usr/local/share/u-boot/u-boot-rpi"
|
|
RPI_FIRMWARE_DIR="/usr/local/share/rpi-firmware"
|
|
OL_DIR="${RPI_FIRMWARE_DIR}/overlays"
|
|
OVERLAYS="mmc.dtbo disable-bt.dtbo"
|
|
PART_SCHEME="MBR"
|
|
export BOARDNAME="RPI-B"
|
|
|
|
arm_install_uboot() {
|
|
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 \
|
|
bcm2708-rpi-zero-w.dtb bcm2708-rpi-b-plus.dtb \
|
|
bcm2708-rpi-b.dtb bcm2708-rpi-cm.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 ${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 ${OL_DIR}/${_OL} \
|
|
${FATMOUNT}/overlays/${_OL}
|
|
done
|
|
sync
|
|
umount_loop ${CHROOTDIR}/${FATMOUNT}
|
|
chroot ${CHROOTDIR} rmdir ${FATMOUNT}
|
|
|
|
return 0
|
|
}
|