mirror of
https://github.com/freebsd/freebsd-src
synced 2024-09-06 17:18:32 +00:00
![Emmanuel Vadot](/assets/img/avatar_default.png)
The RPI2 v1.2 is using the same SoC as the RPI3 so it can boot this image but needs the RPI2 dtb. MFC after: 3 days
58 lines
1.6 KiB
Bash
58 lines
1.6 KiB
Bash
#!/bin/sh
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
DTB_DIR="/usr/local/share/rpi-firmware"
|
|
DTB="bcm2709-rpi-2-b.dtb bcm2710-rpi-3-b.dtb bcm2710-rpi-3-b-plus.dtb bcm2711-rpi-4-b.dtb"
|
|
EMBEDDED_TARGET_ARCH="aarch64"
|
|
EMBEDDED_TARGET="arm64"
|
|
EMBEDDEDBUILD=1
|
|
EMBEDDEDPORTS="sysutils/u-boot-rpi3 sysutils/rpi-firmware"
|
|
FAT_SIZE="50m -b 1m"
|
|
FAT_TYPE="16"
|
|
IMAGE_SIZE="3072M"
|
|
KERNEL="GENERIC"
|
|
MD_ARGS="-x 63 -y 255"
|
|
NODOC=1
|
|
OL_DIR="${DTB_DIR}/overlays"
|
|
OVERLAYS="mmc.dtbo pwm.dtbo disable-bt.dtbo"
|
|
PART_SCHEME="MBR"
|
|
export BOARDNAME="RPI3"
|
|
|
|
arm_install_uboot() {
|
|
UBOOT_DIR="/usr/local/share/u-boot/u-boot-rpi3"
|
|
UBOOT_FILES="README u-boot.bin"
|
|
DTB_FILES="armstub8.bin armstub8-gic.bin bootcode.bin fixup_cd.dat \
|
|
fixup_db.dat fixup_x.dat fixup.dat LICENCE.broadcom \
|
|
start_cd.elf start_db.elf start_x.elf start.elf \
|
|
fixup4.dat fixup4cd.dat fixup4db.dat fixup4x.dat start4.elf \
|
|
start4cd.elf start4db.elf start4x.elf ${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 _DF in ${DTB_FILES}; do
|
|
chroot ${CHROOTDIR} cp -p ${DTB_DIR}/${_DF} \
|
|
${FATMOUNT}/${_DF}
|
|
done
|
|
chroot ${CHROOTDIR} cp -p ${DTB_DIR}/config_rpi4.txt \
|
|
${FATMOUNT}
|
|
chroot ${CHROOTDIR} cp -p ${DTB_DIR}/config_rpi3.txt \
|
|
${FATMOUNT}/config.txt
|
|
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
|
|
}
|