1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun 3*4882a593Smuzhiyun #ifndef __ABI_CSKY_VDSO_H 4*4882a593Smuzhiyun #define __ABI_CSKY_VDSO_H 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun #include <linux/uaccess.h> 7*4882a593Smuzhiyun setup_vdso_page(unsigned short * ptr)8*4882a593Smuzhiyunstatic inline int setup_vdso_page(unsigned short *ptr) 9*4882a593Smuzhiyun { 10*4882a593Smuzhiyun int err = 0; 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun /* movi r7, 173 */ 13*4882a593Smuzhiyun err |= __put_user(0xea07, ptr); 14*4882a593Smuzhiyun err |= __put_user(0x008b, ptr+1); 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun /* trap 0 */ 17*4882a593Smuzhiyun err |= __put_user(0xc000, ptr+2); 18*4882a593Smuzhiyun err |= __put_user(0x2020, ptr+3); 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun return err; 21*4882a593Smuzhiyun } 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun #endif /* __ABI_CSKY_STRING_H */ 24