
30 Apr
2018
30 Apr
'18
10:37 a.m.
On 30 Apr 2018, at 10:34, Emmanuel Vadot manu@freebsd.org wrote:
Signed-off-by: Emmanuel Vadot manu@freebsd.org
api/api.c | 11 +++++++++++ 1 file changed, 11 insertions(+)
diff --git a/api/api.c b/api/api.c index 7eee2fc083..7d1608b520 100644 --- a/api/api.c +++ b/api/api.c @@ -290,6 +290,17 @@ static int API_dev_close(va_list ap) if (!err) di->state = DEV_STA_CLOSED;
+#if defined(CONFIG_SYS_HAVE_DCACHE_MAINTENANCE) && \
- !defined(CONFIG_SYS_DCACHE_OFF)
- if (dcache_status())
flush_dcache_all();
+#endif +#if defined(CONFIG_SYS_HAVE_ICACHE_MAINTENANCE) && \
- !defined(CONFIG_SYS_ICACHE_OFF)
- if (icache_status())
invalidate_icache_all();
+#endif
Wouldn’t it be a cleaner option to make flush_dcache_all and invalidate_icache_all weak-functions and provide a default implementation that does nothing. Those architectures that then need to implement specific cache maintenance, could override these as required.
return err; }
-- 2.16.3