Commit cee9b8d6 authored by Russell King's avatar Russell King Committed by Dinh Nguyen

ARM: socfpga: make sure socfpga_cpu1start_addr is properly flushed

Make sure socfpga_cpu1start_addr is properly flushed from it's cache line so
that secondary cpu's can see it.
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
Tested-by: default avatarSteffen Trumtrar <s.trumtrar@pengutronix.de>
Signed-off-by: default avatarDinh Nguyen <dinguyen@opensource.altera.com>
parent 78c03c7a
...@@ -23,6 +23,7 @@ ...@@ -23,6 +23,7 @@
#include <asm/hardware/cache-l2x0.h> #include <asm/hardware/cache-l2x0.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
#include <asm/mach/map.h> #include <asm/mach/map.h>
#include <asm/cacheflush.h>
#include "core.h" #include "core.h"
...@@ -73,6 +74,10 @@ void __init socfpga_sysmgr_init(void) ...@@ -73,6 +74,10 @@ void __init socfpga_sysmgr_init(void)
(u32 *) &socfpga_cpu1start_addr)) (u32 *) &socfpga_cpu1start_addr))
pr_err("SMP: Need cpu1-start-addr in device tree.\n"); pr_err("SMP: Need cpu1-start-addr in device tree.\n");
/* Ensure that socfpga_cpu1start_addr is visible to other CPUs */
smp_wmb();
sync_cache_w(&socfpga_cpu1start_addr);
sys_manager_base_addr = of_iomap(np, 0); sys_manager_base_addr = of_iomap(np, 0);
np = of_find_compatible_node(NULL, NULL, "altr,rst-mgr"); np = of_find_compatible_node(NULL, NULL, "altr,rst-mgr");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment