Page MenuHomeFreeBSD

D14230.id40708.diff
No OneTemporary

D14230.id40708.diff

Index: head/sysutils/u-boot-master/Makefile
===================================================================
--- head/sysutils/u-boot-master/Makefile
+++ head/sysutils/u-boot-master/Makefile
@@ -5,29 +5,25 @@
PORTNAME= u-boot
PORTVERSION= ${UBOOT_VERSION}
-PORTREVISION= 2
-DISTVERSIONPREFIX= ports-v
CATEGORIES= sysutils
PKGNAMESUFFIX?= -${MODEL}
+MASTER_SITES= ftp://ftp.denx.de/pub/u-boot/
-MAINTAINER= imp@FreeBSD.org
+MAINTAINER= uboot@FreeBSD.org
COMMENT= Cross-build das u-boot for model ${MODEL}
LICENSE= GPLv2
BUILD_DEPENDS+= gsed:textproc/gsed \
swig3.0:devel/swig30 \
- dtc>=1.4.1:sysutils/dtc
+ dtc>=1.4.1:sysutils/dtc \
+ mkimage:sysutils/u-boot-tools
BUILD_DEPENDS+= ${COMPILER}:devel/${COMPILER}
-USES= gmake python:2.7,build shebangfix
-BINARY_ALIAS= swig=swig3.0 sed=gsed
+USES= tar:bz2 gmake python:2.7,build shebangfix
+BINARY_ALIAS= swig=swig3.0 sed=gsed dtc=${LOCALBASE}/bin/dtc
-USE_GITHUB= yes
-GH_ACCOUNT= freebsd
-GH_PROJECT= u-boot
-
-SHEBANG_FILES= lib/libfdt/pylibfdt/setup.py
+SHEBANG_FILES= tools/binman/binman.py
SSP_UNSAFE= yes
UBOOT_DIR= share/u-boot/${PORTNAME}${PKGNAMESUFFIX}
INST= ${PREFIX}/${UBOOT_DIR}
@@ -74,7 +70,7 @@
.if !defined(UBOOT_VERSION) && defined(UBOOT_VERSION_${FAMILY:tu})
UBOOT_VERSION=${UBOOT_VERSION_${FAMILY:tu}}
.endif
-UBOOT_VERSION?= 2017.09.00
+UBOOT_VERSION?= 2018.03
.if !defined(UBOOT_PLIST) && defined(UBOOT_PLIST_${FAMILY:tu})
UBOOT_PLIST=${UBOOT_PLIST_${FAMILY:tu}}
@@ -89,6 +85,7 @@
.if ${UBOOT_ARCH} == arm
CROSS_COMPILE=arm-none-eabi-
ARCHFLAGS=ARCH=${UBOOT_ARCH}
+UBOOT_PLIST+= boot.scr
.elif ${UBOOT_ARCH} == aarch64
CROSS_COMPILE=aarch64-none-elf-
ARCHFLAGS=ARCH=arm
@@ -115,14 +112,31 @@
.endfor
PLIST_FILES+= ${UBOOT_DIR}/README
+post-patch:
+ @${REINPLACE_CMD} -e "s|make|${MAKE_CMD}|" ${WRKSRC}/scripts/kconfig/merge_config.sh
+ ${CP} ${FILESDIR}/FreeBSD_Fragment ${WRKSRC}/configs/
+ ${CP} ${FILESDIR}/boot.cmd ${WRKSRC}/
+
+.if ${UBOOT_ARCH} == arm
+# For armv6/v7 we want CONFIG_API
+# Use a KConfig fragment for that
do-configure:
+ (cd ${WRKSRC}; ${SETENV} ${CONFIGURE_ENV} scripts/kconfig/merge_config.sh configs/${BOARD_CONFIG} configs/FreeBSD_Fragment)
+.else
+do-configure:
(cd ${WRKSRC}; ${SETENV} ${CONFIGURE_ENV} ${MAKE_CMD} ${BOARD_CONFIG})
+.endif
# U-Boot for Allwinner 64bits SoCs is splited in two parts
# Generate a single binary to ease deployement on sdcard
.if defined(FAMILY) && ${FAMILY} == allwinner64
post-build:
${CAT} ${WRKSRC}/spl/sunxi-spl.bin ${WRKSRC}/u-boot.itb > ${WRKSRC}/u-boot-sunxi-with-spl.bin
+.endif
+
+.if ${UBOOT_ARCH} == arm
+post-build:
+ mkimage -C none -A arm -T script -d ${FILESDIR}/boot.cmd ${WRKSRC}/boot.scr
.endif
# If we need to put anything into WRKSRC, do so now so we can build the PLIST
Index: head/sysutils/u-boot-master/distinfo
===================================================================
--- head/sysutils/u-boot-master/distinfo
+++ head/sysutils/u-boot-master/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1508182195
-SHA256 (freebsd-u-boot-ports-v2017.09.00_GH0.tar.gz) = 5e408dee8be45e11293771a7d8a91250dad20711088195f5d6da99d42f5d4f7e
-SIZE (freebsd-u-boot-ports-v2017.09.00_GH0.tar.gz) = 14429809
+TIMESTAMP = 1521912727
+SHA256 (u-boot-2018.03.tar.bz2) = 7e7477534409d5368eb1371ffde6820f0f79780a1a1f676161c48442cb303dfd
+SIZE (u-boot-2018.03.tar.bz2) = 12304292
Index: head/sysutils/u-boot-master/files/FreeBSD_Fragment
===================================================================
--- head/sysutils/u-boot-master/files/FreeBSD_Fragment
+++ head/sysutils/u-boot-master/files/FreeBSD_Fragment
@@ -0,0 +1 @@
+CONFIG_API=y
Index: head/sysutils/u-boot-master/files/boot.cmd
===================================================================
--- head/sysutils/u-boot-master/files/boot.cmd
+++ head/sysutils/u-boot-master/files/boot.cmd
@@ -0,0 +1,2 @@
+fatload ${devtype} ${devnum}:${distro_bootpart} ${kernel_addr_r} ubldr.bin && go ${kernel_addr_r}
+echo "Cannot load ubldr.bin"
Index: head/sysutils/u-boot-master/files/patch-api_api.c
===================================================================
--- head/sysutils/u-boot-master/files/patch-api_api.c
+++ head/sysutils/u-boot-master/files/patch-api_api.c
@@ -0,0 +1,14 @@
+--- api/api.c.orig 2018-01-09 01:25:29 UTC
++++ api/api.c
+@@ -290,6 +290,11 @@ static int API_dev_close(va_list ap)
+ if (!err)
+ di->state = DEV_STA_CLOSED;
+
++ if (dcache_status())
++ flush_dcache_all();
++ if (icache_status())
++ invalidate_icache_all();
++
+ return err;
+ }
+
Index: head/sysutils/u-boot-master/files/patch-cmd_boot.c
===================================================================
--- head/sysutils/u-boot-master/files/patch-cmd_boot.c
+++ head/sysutils/u-boot-master/files/patch-cmd_boot.c
@@ -0,0 +1,13 @@
+--- cmd/boot.c.orig 2018-01-09 01:25:29 UTC
++++ cmd/boot.c
+@@ -19,6 +19,10 @@ __attribute__((weak))
+ unsigned long do_go_exec(ulong (*entry)(int, char * const []), int argc,
+ char * const argv[])
+ {
++ if (dcache_status())
++ flush_dcache_all();
++ if (icache_status())
++ invalidate_icache_all();
+ return entry (argc, argv);
+ }
+
Index: head/sysutils/u-boot-master/files/patch-cmd_elf.c
===================================================================
--- head/sysutils/u-boot-master/files/patch-cmd_elf.c
+++ head/sysutils/u-boot-master/files/patch-cmd_elf.c
@@ -0,0 +1,14 @@
+--- cmd/elf.c.orig 2018-01-09 01:25:29 UTC
++++ cmd/elf.c
+@@ -109,6 +109,11 @@ static unsigned long do_bootelf_exec(ulong (*entry)(in
+ {
+ unsigned long ret;
+
++ if (dcache_status())
++ flush_dcache_all();
++ if (icache_status())
++ invalidate_icache_all();
++
+ /*
+ * pass address parameter as argv[0] (aka command name),
+ * and all remaining args

File Metadata

Mime Type
text/plain
Expires
Sat, Jan 31, 4:43 AM (8 h, 38 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
28108455
Default Alt Text
D14230.id40708.diff (5 KB)

Event Timeline