1 #ifndef __ASM_SH_UACCESS_64_H
2 #define __ASM_SH_UACCESS_64_H
5 * include/asm-sh/uaccess_64.h
7 * Copyright (C) 2000, 2001 Paolo Alberelli
8 * Copyright (C) 2003, 2004 Paul Mundt
10 * User space memory access functions
12 * Copyright (C) 1999 Niibe Yutaka
15 * MIPS implementation version 1.15 by
16 * Copyright (C) 1996, 1997, 1998 by Ralf Baechle
19 * This file is subject to the terms and conditions of the GNU General Public
20 * License. See the file "COPYING" in the main directory of this archive
24 #define __get_user_size(x,ptr,size,retval) \
29 retval = __get_user_asm_b((void *)&x, \
33 retval = __get_user_asm_w((void *)&x, \
37 retval = __get_user_asm_l((void *)&x, \
41 retval = __get_user_asm_q((void *)&x, \
45 __get_user_unknown(); \
50 extern long __get_user_asm_b(void *, long);
51 extern long __get_user_asm_w(void *, long);
52 extern long __get_user_asm_l(void *, long);
53 extern long __get_user_asm_q(void *, long);
54 extern void __get_user_unknown(void);
56 #define __put_user_size(x,ptr,size,retval) \
61 retval = __put_user_asm_b((void *)&x, \
65 retval = __put_user_asm_w((void *)&x, \
69 retval = __put_user_asm_l((void *)&x, \
73 retval = __put_user_asm_q((void *)&x, \
77 __put_user_unknown(); \
81 extern long __put_user_asm_b(void *, long);
82 extern long __put_user_asm_w(void *, long);
83 extern long __put_user_asm_l(void *, long);
84 extern long __put_user_asm_q(void *, long);
85 extern void __put_user_unknown(void);
87 extern long __strnlen_user(const char *__s
, long __n
);
88 extern int __strncpy_from_user(unsigned long __dest
,
89 unsigned long __user __src
, int __count
);
91 #endif /* __ASM_SH_UACCESS_64_H */