diff --git a/sysutils/Makefile b/sysutils/Makefile --- a/sysutils/Makefile +++ b/sysutils/Makefile @@ -1454,6 +1454,7 @@ SUBDIR += u-boot-rpi3-32 SUBDIR += u-boot-rpi4 SUBDIR += u-boot-sifive-fu540 + SUBDIR += u-boot-sifive-fu740 SUBDIR += u-boot-sinovoip-bpi-m3 SUBDIR += u-boot-sopine SUBDIR += u-boot-sopine-spi diff --git a/sysutils/u-boot-sifive-fu740/Makefile b/sysutils/u-boot-sifive-fu740/Makefile new file mode 100644 --- /dev/null +++ b/sysutils/u-boot-sifive-fu740/Makefile @@ -0,0 +1,16 @@ +MASTERDIR= ${.CURDIR}/../u-boot-master + +MODEL= sifive-fu740 +BOARD_CONFIG= sifive_unmatched_defconfig +FAMILY= sifive +UBOOT_ARCH= riscv64 + +# The FIT image will embed an OpenSBI firmware binary +OPENSBI_FIRM= ${LOCALBASE}/share/opensbi/lp64/generic/firmware/fw_dynamic.bin +BUILD_DEPENDS+= ${OPENSBI_FIRM}:sysutils/opensbi +MAKE_ENV+= OPENSBI=${OPENSBI_FIRM} + +UBOOT_MOVE= ${WRKSRC}/spl/u-boot-spl.bin +UBOOT_PLIST= u-boot.itb u-boot-spl.bin + +.include "${MASTERDIR}/Makefile" diff --git a/sysutils/u-boot-sifive-fu740/pkg-descr b/sysutils/u-boot-sifive-fu740/pkg-descr new file mode 100644 --- /dev/null +++ b/sysutils/u-boot-sifive-fu740/pkg-descr @@ -0,0 +1,19 @@ +U-Boot loader and related files for the HiFive Unmatched (FU740). + +The SD card must be formatted with a GPT partition scheme, and expects two +specific GUID partition types for the SPL and FIT image. + +Note: due to limitations in gpart(8), sgdisk(8) should be used instead. Install +the sysutils/gdisk port or package. + +Assuming an SD card device in /dev/da2, execute: +sgdisk -g --clear --set-alignment=1 \ + --new=1:34:2081 --change-name=1:spl --typecode=1:5B193300-FC78-40CD-8002-E86C45580B47 \ + --new=2:2082:10273 --change-name=2:uboot --typecode=2:2E54B353-1271-4842-806F-E436D6AF6985 \ + /dev/da2 + +Now, copy the u-boot files to the SD card with dd(1). +dd if=/usr/local/share/u-boot/u-boot-sifive-fu740/u-boot-spl.bin of=/dev/da2p1 conv=sync +dd if=/usr/local/share/u-boot/u-boot-sifive-fu740/u-boot.itb of=/dev/da2p2 conv=sync + +WWW: https://www.denx.de/wiki/U-Boot