summaryrefslogtreecommitdiff
path: root/kernel/power/tuxonice_atomic_copy.h
blob: 2de0e3b498f2edf9a8426b4944a1e3d00e7090fa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/*
 * kernel/power/tuxonice_atomic_copy.h
 *
 * Copyright 2008-2015 Nigel Cunningham (nigel at nigelcunningham com au)
 *
 * Distributed under GPLv2.
 *
 * Routines for doing the atomic save/restore.
 */

enum {
	ATOMIC_ALL_STEPS,
	ATOMIC_STEP_SYSCORE_RESUME,
	ATOMIC_STEP_IRQS,
	ATOMIC_STEP_CPU_HOTPLUG,
	ATOMIC_STEP_PLATFORM_FINISH,
	ATOMIC_STEP_DEVICE_RESUME,
	ATOMIC_STEP_DPM_COMPLETE,
	ATOMIC_STEP_PLATFORM_END,
};

int toi_go_atomic(pm_message_t state, int toi_time);
void toi_end_atomic(int stage, int toi_time, int error);

extern void platform_recover(int platform_mode);