diff options
Diffstat (limited to 'sysutils/u-boot-rpi/files/patch-common_cmd__boot.c')
-rw-r--r-- | sysutils/u-boot-rpi/files/patch-common_cmd__boot.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/sysutils/u-boot-rpi/files/patch-common_cmd__boot.c b/sysutils/u-boot-rpi/files/patch-common_cmd__boot.c new file mode 100644 index 000000000000..2b4967f40cf5 --- /dev/null +++ b/sysutils/u-boot-rpi/files/patch-common_cmd__boot.c @@ -0,0 +1,18 @@ +--- common/cmd_boot.c.orig 2015-10-19 23:59:38 UTC ++++ common/cmd_boot.c +@@ -19,6 +19,15 @@ __attribute__((weak)) + unsigned long do_go_exec(ulong (*entry)(int, char * const []), int argc, + char * const argv[]) + { ++ /* ++ * 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 invalidate the icache (because we DMA'd new data into that ++ * memory recently) and launch the program directly. ++ */ ++ flush_dcache_all(); ++ invalidate_icache_all(); + return entry (argc, argv); + } + |