1 # Add support for in-kernel (from kernel 3.6) suspend to both (#843657)
2 diff --git a/pm/pm-functions.in b/pm/pm-functions.in
3 --- a/pm/pm-functions.in
4 +++ b/pm/pm-functions.in
5 @@ -316,8 +316,28 @@ if [ -z "$HIBERNATE_MODULE" ] && \
7 [ -n "${HIBERNATE_MODE}" ] && \
8 grep -qw "${HIBERNATE_MODE}" /sys/power/disk && \
9 + HIBERNATE_MODE_SAVE=$(cat /sys/power/disk) && \
10 + HIBERNATE_MODE_SAVE="${HIBERNATE_MODE_SAVE##*[}" && \
11 + HIBERNATE_MODE_SAVE="${HIBERNATE_MODE_SAVE%%]*}" && \
12 echo -n "${HIBERNATE_MODE}" > /sys/power/disk
13 echo -n "disk" > /sys/power/state
15 + echo -n "$HIBERNATE_MODE_SAVE" > /sys/power/disk
20 +# for kernels that support suspend to both (i.e. hybrid suspend)
22 +if [ -z "$SUSPEND_HYBRID_MODULE" ] && \
23 + [ -f /sys/power/disk ] && \
24 + grep -q disk /sys/power/state && \
25 + grep -q suspend /sys/power/disk; then
26 + SUSPEND_HYBRID_MODULE="kernel"
29 + HIBERNATE_MODE="suspend"