blob: 0c9f8b74dd9743ecd1977281c9365d6d1381fdf2 [file] [log] [blame]
Michael Neuling98ae22e2013-02-13 16:21:35 +00001/*
2 * Transactional memory support routines to reclaim and recheckpoint
3 * transactional process state.
4 *
5 * Copyright 2012 Matt Evans & Michael Neuling, IBM Corporation.
6 */
7
Michael Neulingb75c1002013-05-26 18:30:56 +00008#include <uapi/asm/tm.h>
9
Michael Neuling98ae22e2013-02-13 16:21:35 +000010#ifdef CONFIG_PPC_TRANSACTIONAL_MEM
11extern void do_load_up_transact_fpu(struct thread_struct *thread);
12extern void do_load_up_transact_altivec(struct thread_struct *thread);
13#endif
14
15extern void tm_enable(void);
16extern void tm_reclaim(struct thread_struct *thread,
17 unsigned long orig_msr, uint8_t cause);
Paul Mackerrasd31626f2014-01-13 15:56:29 +110018extern void tm_reclaim_current(uint8_t cause);
Michael Neuling98ae22e2013-02-13 16:21:35 +000019extern void tm_recheckpoint(struct thread_struct *thread,
20 unsigned long orig_msr);
21extern void tm_abort(uint8_t cause);
22extern void tm_save_sprs(struct thread_struct *thread);
23extern void tm_restore_sprs(struct thread_struct *thread);