forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-10-22 8ac6c7a54ed1b98d142dce24b11c6de6a1e239a5
kernel/tools/arch/sparc/include/asm/barrier_64.h
....@@ -40,4 +40,17 @@
4040 #define rmb() __asm__ __volatile__("":::"memory")
4141 #define wmb() __asm__ __volatile__("":::"memory")
4242
43
+#define smp_store_release(p, v) \
44
+do { \
45
+ barrier(); \
46
+ WRITE_ONCE(*p, v); \
47
+} while (0)
48
+
49
+#define smp_load_acquire(p) \
50
+({ \
51
+ typeof(*p) ___p1 = READ_ONCE(*p); \
52
+ barrier(); \
53
+ ___p1; \
54
+})
55
+
4356 #endif /* !(__TOOLS_LINUX_SPARC64_BARRIER_H) */