summaryrefslogtreecommitdiff
path: root/bsp/ultrarisc/arch/ur-cp100/cache.c
diff options
context:
space:
mode:
Diffstat (limited to 'bsp/ultrarisc/arch/ur-cp100/cache.c')
-rw-r--r--bsp/ultrarisc/arch/ur-cp100/cache.c45
1 files changed, 45 insertions, 0 deletions
diff --git a/bsp/ultrarisc/arch/ur-cp100/cache.c b/bsp/ultrarisc/arch/ur-cp100/cache.c
new file mode 100644
index 0000000000..57f47e7bed
--- /dev/null
+++ b/bsp/ultrarisc/arch/ur-cp100/cache.c
@@ -0,0 +1,45 @@
+/*
+ * Copyright (c) 2006-2025 RT-Thread Development Team
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Change Logs:
+ * Date Author Notes
+ * 2021-01-29 lizhirui first version
+ * 2025-05-29 Zhang Jing remove redundant code
+ */
+
+#include <rthw.h>
+#include <rtdef.h>
+#include <board.h>
+#include <riscv.h>
+#include <cache.h>
+
+void rt_hw_cpu_icache_ops(int ops, void *addr, int size)
+{
+ if (ops == RT_HW_CACHE_INVALIDATE)
+ {
+ rt_hw_cpu_icache_invalidate(addr, size);
+ }
+ return;
+}
+
+void rt_hw_cpu_dcache_ops(int ops, void *addr, int size)
+{
+ if (ops == RT_HW_CACHE_FLUSH)
+ {
+ rt_hw_cpu_dcache_clean(addr, size);
+ }
+ else
+ {
+ rt_hw_cpu_dcache_invalidate(addr, size);
+ }
+ return;
+}
+
+void rt_hw_sync_cache_local(void *addr, int size)
+{
+ rt_hw_cpu_dcache_clean_local(addr, size);
+ rt_hw_cpu_icache_invalidate_local(addr, size);
+ return;
+} \ No newline at end of file