diff options
author | David Howells <dhowells@redhat.com> | 2012-03-28 18:30:03 +0100 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2012-03-28 18:30:03 +0100 |
commit | e839ca528718e68cad32a307dc9aabf01ef3eb05 (patch) | |
tree | 5ceb6ece0688455f7205739b71e4b6e04afd2988 /arch/sh/include/asm/switch_to_64.h | |
parent | 4eb14db4440febb7e560eb8ab2c099bc6e11a0ac (diff) | |
download | talos-op-linux-e839ca528718e68cad32a307dc9aabf01ef3eb05.tar.gz talos-op-linux-e839ca528718e68cad32a307dc9aabf01ef3eb05.zip |
Disintegrate asm/system.h for SH
Disintegrate asm/system.h for SH.
Signed-off-by: David Howells <dhowells@redhat.com>
cc: linux-sh@vger.kernel.org
Diffstat (limited to 'arch/sh/include/asm/switch_to_64.h')
-rw-r--r-- | arch/sh/include/asm/switch_to_64.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/arch/sh/include/asm/switch_to_64.h b/arch/sh/include/asm/switch_to_64.h new file mode 100644 index 000000000000..ba3129d6bc21 --- /dev/null +++ b/arch/sh/include/asm/switch_to_64.h @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2000, 2001 Paolo Alberelli + * Copyright (C) 2003 Paul Mundt + * Copyright (C) 2004 Richard Curnow + * + * This file is subject to the terms and conditions of the GNU General Public + * License. See the file "COPYING" in the main directory of this archive + * for more details. + */ +#ifndef __ASM_SH_SWITCH_TO_64_H +#define __ASM_SH_SWITCH_TO_64_H + +struct thread_struct; +struct task_struct; + +/* + * switch_to() should switch tasks to task nr n, first + */ +struct task_struct *sh64_switch_to(struct task_struct *prev, + struct thread_struct *prev_thread, + struct task_struct *next, + struct thread_struct *next_thread); + +#define switch_to(prev,next,last) \ +do { \ + if (last_task_used_math != next) { \ + struct pt_regs *regs = next->thread.uregs; \ + if (regs) regs->sr |= SR_FD; \ + } \ + last = sh64_switch_to(prev, &prev->thread, next, \ + &next->thread); \ +} while (0) + + +#endif /* __ASM_SH_SWITCH_TO_64_H */ |