1 /* 2 * include/asm-xtensa/current.h 3 * 4 * This file is subject to the terms and conditions of the GNU General Public 5 * License. See the file "COPYING" in the main directory of this archive 6 * for more details. 7 * 8 * Copyright (C) 2001 - 2005 Tensilica Inc. 9 */ 10 11 #ifndef _XTENSA_CURRENT_H 12 #define _XTENSA_CURRENT_H 13 14 #ifndef __ASSEMBLY__ 15 16 #include <linux/thread_info.h> 17 18 struct task_struct; 19 20 static inline struct task_struct *get_current(void) 21 { 22 return current_thread_info()->task; 23 } 24 25 #define current get_current() 26 27 #else 28 29 #define CURRENT_SHIFT 13 30 31 #define GET_CURRENT(reg,sp) \ 32 GET_THREAD_INFO(reg,sp); \ 33 l32i reg, reg, TI_TASK \ 34 35 #endif 36 37 38 #endif /* XTENSA_CURRENT_H */ 39