Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 15 Nov 2017 18:50:36 +0000 (UTC)
From:      Emmanuel Vadot <manu@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r454262 - in head/sysutils: u-boot-master u-boot-rpi u-boot-rpi/files
Message-ID:  <201711151850.vAFIoas7007096@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: manu (src committer)
Date: Wed Nov 15 18:50:36 2017
New Revision: 454262
URL: https://svnweb.freebsd.org/changeset/ports/454262

Log:
  Update the u-boot-rpi port to use the u-boot-master port.
  This also bring u-boot to version 2017.09 and the firmware files are no
  longer in this port but in sysutils/rpi-firmware.
  Also I'm stepping in as maintainer.
  
  Tested On: RPI-B, RPI0v1.2, RPI0v1.3
  
  Reviewed by:	imp
  Approved by:	imp
  Differential Revision:	https://reviews.freebsd.org/D13048

Deleted:
  head/sysutils/u-boot-rpi/distinfo
  head/sysutils/u-boot-rpi/files/
Modified:
  head/sysutils/u-boot-master/Makefile
  head/sysutils/u-boot-rpi/Makefile
  head/sysutils/u-boot-rpi/pkg-descr

Modified: head/sysutils/u-boot-master/Makefile
==============================================================================
--- head/sysutils/u-boot-master/Makefile	Wed Nov 15 18:50:12 2017	(r454261)
+++ head/sysutils/u-boot-master/Makefile	Wed Nov 15 18:50:36 2017	(r454262)
@@ -61,6 +61,9 @@ UBOOT_ARCH_ALLWINNER64=aarch64
 UBOOT_PLIST_ZYNQ_7000=u-boot.img boot.bin uEnv.txt
 UBOOT_MOVE_ZYNQ_7000=${WRKSRC}/spl/boot.bin ${.CURDIR}/files/uEnv.txt
 
+# Overrides for RPI family
+UBOOT_PLIST_RPI=	u-boot.bin
+
 # Uboot variables
 .if !defined(UBOOT_VERSION) && defined(UBOOT_VERSION_${FAMILY:tu})
 UBOOT_VERSION=${UBOOT_VERSION_${FAMILY:tu}}

Modified: head/sysutils/u-boot-rpi/Makefile
==============================================================================
--- head/sysutils/u-boot-rpi/Makefile	Wed Nov 15 18:50:12 2017	(r454261)
+++ head/sysutils/u-boot-rpi/Makefile	Wed Nov 15 18:50:36 2017	(r454262)
@@ -1,60 +1,12 @@
 # $FreeBSD$
 
-PORTNAME=	u-boot
-PORTVERSION=	2016.01
-PORTREVISION=	1
-CATEGORIES=	sysutils
-MASTER_SITES=	ftp://ftp.denx.de/pub/u-boot/ \
-		LOCAL/ian/:bootfiles
-PKGNAMESUFFIX=	-rpi
-DISTFILES=	${DISTNAME}${EXTRACT_SUFX} \
-		rpi-boot-files-2016.01.tar.bz2:bootfiles
+MAINTAINER=	manu@FreeBSD.org
+MASTERDIR=	${.CURDIR}/../u-boot-master
 
-MAINTAINER=	ian@FreeBSD.org
-COMMENT=	Cross-build U-Boot loader for Raspberry Pi
+MODEL=		rpi
+BOARD_CONFIG=	rpi_defconfig
+FAMILY=		rpi
 
-LICENSE=	GPLv2
+DEPENDS=	${LOCALBASE}/share/rpi-firmware/bootcode.bin:sysutils/rpi-firmware
 
-BUILD_DEPENDS=	arm-none-eabi-gcc:devel/arm-none-eabi-gcc
-
-NO_ARCH=	yes
-
-USES=		gmake tar:bzip2
-SSP_UNSAFE=	yes # cross-LD does not support -fstack-protector
-
-WRK_BOOTFILES=	${WRKDIR}/rpi-boot-files
-
-U_BOOT_DIR=	share/u-boot/${PORTNAME}${PKGNAMESUFFIX}
-PLIST_FILES=	${U_BOOT_DIR}/u-boot.img \
-		${U_BOOT_DIR}/LICENCE.broadcom \
-		${U_BOOT_DIR}/README-BootDetails \
-		${U_BOOT_DIR}/bootcode.bin \
-		${U_BOOT_DIR}/config.txt \
-		${U_BOOT_DIR}/fixup.dat \
-		${U_BOOT_DIR}/fixup_cd.dat \
-		${U_BOOT_DIR}/fixup_db.dat \
-		${U_BOOT_DIR}/fixup_x.dat \
-		${U_BOOT_DIR}/start.elf \
-		${U_BOOT_DIR}/start_cd.elf
-
-MAKE_ARGS+=	ARCH=arm \
-		CROSS_COMPILE=arm-none-eabi-
-
-post-patch:
-	@${LN} -sf compiler-gcc5.h ${WRKSRC}/include/linux/compiler-gcc6.h
-
-do-configure:
-	(cd ${WRKSRC}; ${MAKE_CMD} rpi_defconfig)
-
-# The output of the u-boot build process is u-boot.bin.  We have to put a
-# standard (for the RPi) image header on the front of it, and the resulting
-# file is named u-boot.img.  Also copy the entire contents of the bootfiles
-# distribution (these are proprietary binary files required to boot).
-IMGFILE=${STAGEDIR}/${PREFIX}/${U_BOOT_DIR}/u-boot.img
-do-install:
-	${MKDIR} ${STAGEDIR}/${PREFIX}/${U_BOOT_DIR}
-	${GZCAT} ${FILESDIR}/imgprefix.bin.gz >${IMGFILE}
-	${CAT} ${WRKSRC}/u-boot.bin >>${IMGFILE}
-	${INSTALL_DATA} ${WRK_BOOTFILES}/* ${STAGEDIR}/${PREFIX}/${U_BOOT_DIR}
-
-.include <bsd.port.mk>
+.include "${MASTERDIR}/Makefile"

Modified: head/sysutils/u-boot-rpi/pkg-descr
==============================================================================
--- head/sysutils/u-boot-rpi/pkg-descr	Wed Nov 15 18:50:12 2017	(r454261)
+++ head/sysutils/u-boot-rpi/pkg-descr	Wed Nov 15 18:50:36 2017	(r454262)
@@ -1,12 +1,15 @@
-U-Boot loader and related files for Raspberry Pi
+U-Boot loader for Raspberry Pi
 
-To install this bootloader, copy ALL the files in the share/u-boot/u-boot-rpi
+To install this bootloader, copy u-boot.bin in the share/u-boot/u-boot-rpi
 directory to the first partition, formatted as FAT16 or FAT32, on an SD card.
+You will also need the firmware files from the rpi-firmware package.
 
 This version is patched so that:
  * ELF and API features are enabled.
- * The default environment is trimmed to just what's needed to boot.
- * The saveenv command writes to the file uboot.env on the FAT partition.
+ * The distroboot command knows how to load FreeBSD loader(8)
+ * By default, it loads ubldr.bin (PIE) from file ubldr.bin on the FAT
+   partition to address ${kernel_addr_r}, and launches it. If ubldr.bin is
+   not found, it falls back on ubldr
 
 For information about running FreeBSD on RaspberryPi, see
 WWW: http://wiki.freebsd.org/FreeBSD/arm/Raspberry%20Pi



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201711151850.vAFIoas7007096>