summaryrefslogtreecommitdiff
path: root/arch/csky/abiv2/inc
diff options
context:
space:
mode:
authorGuo Ren <ren_guo@c-sky.com>2018-09-05 14:25:14 +0800
committerGuo Ren <ren_guo@c-sky.com>2018-10-26 00:54:22 +0800
commitdd3ef10ea295f8f4181e6044fb19444cad7c6aab (patch)
treea866e02f173967c81798428d64a8b0f3f9c8cd6a /arch/csky/abiv2/inc
parente9564df753fd547fcbcd4fd10015c3b1213ef452 (diff)
csky: VDSO and rt_sigreturn
This patch adds files related to VDSO and our VDSO only support rt_sigreturn. Signed-off-by: Guo Ren <ren_guo@c-sky.com> Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/csky/abiv2/inc')
-rw-r--r--arch/csky/abiv2/inc/abi/vdso.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/arch/csky/abiv2/inc/abi/vdso.h b/arch/csky/abiv2/inc/abi/vdso.h
new file mode 100644
index 000000000000..b60d4a070326
--- /dev/null
+++ b/arch/csky/abiv2/inc/abi/vdso.h
@@ -0,0 +1,23 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+
+#ifndef __ABI_CSKY_VDSO_H
+#define __ABI_CSKY_VDSO_H
+
+#include <linux/uaccess.h>
+
+static inline int setup_vdso_page(unsigned short *ptr)
+{
+ int err = 0;
+
+ /* movi r7, 173 */
+ err |= __put_user(0xea07, ptr);
+ err |= __put_user(0x008b, ptr+1);
+
+ /* trap 0 */
+ err |= __put_user(0xc000, ptr+2);
+ err |= __put_user(0x2020, ptr+3);
+
+ return err;
+}
+
+#endif /* __ABI_CSKY_STRING_H */