summaryrefslogtreecommitdiff
path: root/kernel/power/tuxonice_atomic_copy.h
blob: e2d2b4fb3172b08fa6545ca53ffdf169dc6dcd59 (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);