android_kernel_xiaomi_sm8350/net
Rafael J. Wysocki 3a2d5b7001 PM: Introduce PM_EVENT_HIBERNATE callback state
During the last step of hibernation in the "platform" mode (with the
help of ACPI) we use the suspend code, including the devices'
->suspend() methods, to prepare the system for entering the ACPI S4
system sleep state.

But at least for some devices the operations performed by the
->suspend() callback in that case must be different from its operations
during regular suspend.

For this reason, introduce the new PM event type PM_EVENT_HIBERNATE and
pass it to the device drivers' ->suspend() methods during the last phase
of hibernation, so that they can distinguish this case and handle it as
appropriate.  Modify the drivers that handle PM_EVENT_SUSPEND in a
special way and need to handle PM_EVENT_HIBERNATE in the same way.

These changes are necessary to fix a hibernation regression related
to the i915 driver (ref. http://lkml.org/lkml/2008/2/22/488).

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Pavel Machek <pavel@ucw.cz>
Tested-by: Jeff Chua <jeff.chua.linux@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-02-23 10:40:04 -08:00
..
9p net/9p/trans_virtio.c: Use BUG_ON 2008-02-17 18:42:53 -08:00
802 [TR] net/802/tr.c: sysctl_tr_rif_timeout static 2008-01-31 19:28:31 -08:00
8021q net/8021q/vlan_dev.c: Use print_mac. 2008-02-17 23:34:54 -08:00
appletalk
atm
ax25 [AX25] ax25_out: check skb for NULL in ax25_kick() 2008-02-17 22:31:19 -08:00
bluetooth Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2008-02-19 07:52:45 -08:00
bridge
can [CAN]: Minor clean-ups 2008-02-07 18:05:04 -08:00
core Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2008-02-19 07:52:45 -08:00
dccp [SOCK] proto: Add hashinfo member to struct proto 2008-02-03 04:28:52 -08:00
decnet [DECNET] ROUTE: remove unecessary alignment 2008-02-07 23:29:57 -08:00
econet
ethernet
ieee80211
ipv4 [TCP]: Fix tcp_v4_send_synack() comment 2008-02-17 22:29:19 -08:00
ipv6 [IPV6]: Use BUG_ON instead of if + BUG in fib6_del_route. 2008-02-18 20:50:42 -08:00
ipx
irda
iucv [AF_IUCV]: defensive programming of iucv_callback_txdone 2008-02-07 18:07:44 -08:00
key [AF_KEY]: Fix bug in spdadd 2008-02-14 14:51:38 -08:00
lapb
llc
mac80211 mac80211: Fix initial hardware configuration 2008-02-15 13:44:19 -05:00
netfilter [NETFILTER] nf_conntrack_proto_tcp.c: Mistyped state corrected. 2008-02-14 14:50:21 -08:00
netlabel [NETLABEL]: Move some initialization code into __init section. 2008-02-17 22:33:57 -08:00
netlink [GENETLINK]: Relax dances with genl_lock. 2008-02-12 22:16:33 -08:00
netrom
packet
rfkill PM: Introduce PM_EVENT_HIBERNATE callback state 2008-02-23 10:40:04 -08:00
rose
rxrpc net/rxrpc: Use BUG_ON 2008-02-17 18:42:03 -08:00
sched [PKT_SCHED] ematch: Fix build warning. 2008-02-10 03:48:15 -08:00
sctp [SCTP]: Convert sctp_dbg_objcnt to seq files. 2008-02-09 23:24:58 -08:00
sunrpc Wrap buffers used for rpc debug printks into RPC_IFDEBUG 2008-02-21 18:42:29 -05:00
tipc [TIPC]: declare proto_ops structures as 'const'. 2008-02-07 18:18:01 -08:00
unix Introduce path_put() 2008-02-14 21:13:33 -08:00
wanrouter
wireless
x25
xfrm [XFRM]: Fix ordering issue in xfrm_dst_hash_transfer(). 2008-02-17 23:29:30 -08:00
compat.c
Kconfig namespaces: mark NET_NS with "depends on NAMESPACES" 2008-02-08 09:22:23 -08:00
Makefile
nonet.c
socket.c [NET]: Make sure sockets implement splice_read 2008-02-15 02:35:45 -08:00
sysctl_net.c
TUNABLE