summaryrefslogtreecommitdiffstats
path: root/release/arm
diff options
context:
space:
mode:
authorgjb <gjb@FreeBSD.org>2015-05-08 13:55:27 +0000
committergjb <gjb@FreeBSD.org>2015-05-08 13:55:27 +0000
commit684abf744f056cf740a72e9ed957b28df0661c5f (patch)
tree1fd823e7da03ce2372fa25cbc792d6dbe3da9cce /release/arm
parent9aa9f68bf05b2715d40fb4e2bcaa5b50644f55c2 (diff)
downloadFreeBSD-src-684abf744f056cf740a72e9ed957b28df0661c5f.zip
FreeBSD-src-684abf744f056cf740a72e9ed957b28df0661c5f.tar.gz
Initial commit to support building RPI2 images, based on information
and documentation written by loos@ on the Wiki. Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'release/arm')
-rw-r--r--release/arm/RPI2.conf31
1 files changed, 31 insertions, 0 deletions
diff --git a/release/arm/RPI2.conf b/release/arm/RPI2.conf
index e4b5659..1aaed77 100644
--- a/release/arm/RPI2.conf
+++ b/release/arm/RPI2.conf
@@ -9,3 +9,34 @@ EMBEDDED_TARGET_ARCH="armv6"
EMBEDDEDPORTS="sysutils/u-boot-rpi2"
KERNEL="RPI2"
NODOC=1
+WORLD_FLAGS="${WORLD_FLAGS} UBLDR_LOADADDR=0x2000000"
+IMAGE_SIZE="1G"
+PART_SCHEME="MBR"
+FAT_SIZE="50m"
+FAT_TYPE="16"
+MD_ARGS="-x 63 -y 255"
+
+arm_install_uboot() {
+ UBOOT_DIR="${CHROOTDIR}/usr/local/share/u-boot/u-boot-rpi2"
+ UBOOT_FILES="bootcode.bin config.txt fixup.dat fixup_cd.dat \
+ fixup_x.dat start.elf start_cd.elf start_x.elf u-boot.bin"
+ FATMOUNT="${DESTDIR}/fat"
+ UFSMOUNT="${DESTDIR}/ufs"
+ chroot ${CHROOTDIR} mkdir -p "${FATMOUNT}" "${UFSMOUNT}"
+ chroot ${CHROOTDIR} mount_msdosfs /dev/${mddev}s1 ${FATMOUNT}
+ chroot ${CHROOTDIR} mount /dev/${mddev}s2a ${UFSMOUNT}
+ for _UF in ${UBOOT_FILES}; do
+ cp -p ${UBOOT_DIR}/${_UF} ${CHROOTDIR}/${FATMOUNT}/${_UF}
+ done
+ cp -p ${CHROOTDIR}/${UFSMOUNT}/boot/ubldr \
+ ${CHROOTDIR}/${FATMOUNT}/ubldr
+ cp -p ${CHROOTDIR}/${UFSMOUNT}/boot/dtb/rpi2.dtb \
+ ${CHROOTDIR}/${FATMOUNT}/rpi2.dtb
+ sync
+ umount_loop ${CHROOTDIR}/${FATMOUNT}
+ umount_loop ${CHROOTDIR}/${UFSMOUNT}
+ rmdir ${CHROOTDIR}/${FATMOUNT}
+ rmdir ${CHROOTDIR}/${UFSMOUNT}
+
+ return 0
+}
OpenPOWER on IntegriCloud