162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 262306a36Sopenharmony_ci 362306a36Sopenharmony_ci#include <linux/uaccess.h> 462306a36Sopenharmony_ci 562306a36Sopenharmony_cistatic inline int __get_inst(u32 *i, u32 *p, bool user) 662306a36Sopenharmony_ci{ 762306a36Sopenharmony_ci return user ? get_user(*i, (u32 __user *)p) : get_kernel_nofault(*i, p); 862306a36Sopenharmony_ci} 962306a36Sopenharmony_ci 1062306a36Sopenharmony_cistatic inline int __get_addr(unsigned long *a, unsigned long *p, bool user) 1162306a36Sopenharmony_ci{ 1262306a36Sopenharmony_ci return user ? get_user(*a, (unsigned long __user *)p) : get_kernel_nofault(*a, p); 1362306a36Sopenharmony_ci} 14