summaryrefslogtreecommitdiff
path: root/sysutils/u-boot-rpi3/files/patch-common_cmd__elf.c
diff options
context:
space:
mode:
authorDiane Bruce <db@FreeBSD.org>2016-10-18 14:23:50 +0000
committerDiane Bruce <db@FreeBSD.org>2016-10-18 14:23:50 +0000
commit38c39dd8da26df3cd84cc043d22e8e2d73d6fbd8 (patch)
tree028a336343266b8728e83f43e75f0d2c2799b4da /sysutils/u-boot-rpi3/files/patch-common_cmd__elf.c
parentnet/quagga: Update 1.0.20160315 -> 1.0.20161017 (diff)
Initial u-boot port for the Raspberry Pi 3
Diffstat (limited to 'sysutils/u-boot-rpi3/files/patch-common_cmd__elf.c')
-rw-r--r--sysutils/u-boot-rpi3/files/patch-common_cmd__elf.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/sysutils/u-boot-rpi3/files/patch-common_cmd__elf.c b/sysutils/u-boot-rpi3/files/patch-common_cmd__elf.c
new file mode 100644
index 000000000000..5e29c658da06
--- /dev/null
+++ b/sysutils/u-boot-rpi3/files/patch-common_cmd__elf.c
@@ -0,0 +1,29 @@
+--- common/cmd_elf.c.orig 2015-04-13 14:53:03 UTC
++++ common/cmd_elf.c
+@@ -35,22 +35,12 @@ static unsigned long do_bootelf_exec(ulo
+ unsigned long ret;
+
+ /*
+- * QNX images require the data cache is disabled.
+- * Data cache is already flushed, so just turn it off.
+- */
+- int dcache = dcache_status();
+- if (dcache)
+- dcache_disable();
+-
+- /*
+- * pass address parameter as argv[0] (aka command name),
+- * and all remaining args
++ * FreeBSD wants the caches enabled while ubldr runs, and as of r276397
++ * the kernel can tolerate being entered with internal (but not external
++ * PL310) caches enabled on armv6/7 systems. So don't disable caches
++ * here, just launch the program directly.
+ */
+ ret = entry(argc, argv);
+-
+- if (dcache)
+- dcache_enable();
+-
+ return ret;
+ }
+