summaryrefslogtreecommitdiffstats
path: root/arch/csky/abiv2
diff options
context:
space:
mode:
authorGuo Ren <ren_guo@c-sky.com>2018-09-05 08:25:14 +0200
committerGuo Ren <ren_guo@c-sky.com>2018-10-25 18:54:22 +0200
commitdd3ef10ea295f8f4181e6044fb19444cad7c6aab (patch)
treea866e02f173967c81798428d64a8b0f3f9c8cd6a /arch/csky/abiv2
parentcsky: Process management and Signal (diff)
downloadlinux-dd3ef10ea295f8f4181e6044fb19444cad7c6aab.tar.xz
linux-dd3ef10ea295f8f4181e6044fb19444cad7c6aab.zip
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')
-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 */