summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 6827172)
raw | patch | inline | side by side (parent: 6827172)
author | Sam Sortais <sam.sortais@xilinx.com> | |
Mon, 29 Feb 2016 05:52:18 +0000 (21:52 -0800) | ||
committer | Sam Sortais <sam.sortais@xilinx.com> | |
Sat, 5 Mar 2016 02:33:19 +0000 (18:33 -0800) |
Signed-off-by: Sam Sortais <sam.sortais@xilinx.com>
lib/include/openamp/env.h | patch | blob | history | |
lib/remoteproc/remoteproc.c | patch | blob | history | |
lib/system/generic/bm_env.c | patch | blob | history |
index 9f2995d2b72f7fb337b31ce6f5e399894a56059c..a26df0ce75eb1940b1f351d40f470eecf58c7037 100644 (file)
* Disables system caches.
*
*/
* Disables system caches.
*
*/
+void env_disable_cache(void);
-void env_disable_cache();
+/**
+ * env_flush_invalidate_all_caches
+ *
+ * Flush and Invalidate all caches.
+ *
+ */
+void env_flush_invalidate_all_caches(void);
typedef void LOCK;
typedef void LOCK;
index a7a157ad508fc1792f63aaf2a099e456d8e2136b..1d82e4d8c1421d870cfda4fbc32762bee5afd26f 100644 (file)
* boots on the same core may experience cache inconsistencies.
*
*/
* boots on the same core may experience cache inconsistencies.
*
*/
- env_disable_cache();
+ /* env_disable_cache(); */
+
+ /*
+ * Flush and Invalidate the caches - When the application is built with
+ * Xilinx Standalone BSP, caches are invalidated as part of boot process.
+ * Even if the master boots firmware multiple times without hard reset on
+ * same core, caches are flushed and invalidated at the end of
+ * remoteproc_resource_deinit for this run and caches would be again
+ * invalidated before starting the main thread of the application on next
+ * run to avoid any cache inconsistencies.
+ */
+ env_flush_invalidate_all_caches();
+
return RPROC_SUCCESS;
}
return RPROC_SUCCESS;
}
index a3a372b4a732d5bec9ba1b90085a627d1da1ec82..d6b9fa0ab1b5ae9a31501b258c65eec0dbfe1cac 100755 (executable)
platform_cache_disable();
}
platform_cache_disable();
}
+/**
+ * env_flush_invalidate_all_caches
+ *
+ * Flush and Invalidate all caches.
+ *
+ */
+
+void env_flush_invalidate_all_caches(void)
+{
+ platform_cache_all_flush_invalidate();
+}
+
+
/**
*
* env_get_timestamp
/**
*
* env_get_timestamp