linux-uconsole/drivers/tty
Rafael J. Wysocki e83e9aef51 PM / Runtime: Rework the "runtime idle" helper routine
The "runtime idle" helper routine, rpm_idle(), currently ignores
return values from .runtime_idle() callbacks executed by it.
However, it turns out that many subsystems use
pm_generic_runtime_idle() which checks the return value of the
driver's callback and executes pm_runtime_suspend() for the device
unless that value is not 0.  If that logic is moved to rpm_idle()
instead, pm_generic_runtime_idle() can be dropped and its users
will not need any .runtime_idle() callbacks any more.

Moreover, the PCI, SCSI, and SATA subsystems' .runtime_idle()
routines, pci_pm_runtime_idle(), scsi_runtime_idle(), and
ata_port_runtime_idle(), respectively, as well as a few drivers'
ones may be simplified if rpm_idle() calls rpm_suspend() after 0 has
been returned by the .runtime_idle() callback executed by it.

To reduce overall code bloat, make the changes described above.

Tested-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Tested-by: Kevin Hilman <khilman@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Kevin Hilman <khilman@linaro.org>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
2014-03-07 12:52:24 +08:00
..
hvc rk: revert 20f3d0b+v3.0.66 to v3.0 2013-11-08 21:34:05 +08:00
ipwireless tty: ipwireless: Remove redundant NULL check before kfree 2013-03-15 13:58:32 -07:00
serial PM / Runtime: Rework the "runtime idle" helper routine 2014-03-07 12:52:24 +08:00
vt rk: revert 20f3d0b+v3.0.66 to v3.0 2013-11-08 21:34:05 +08:00
amiserial.c rk: revert 20f3d0b+v3.0.66 to v3.0 2013-11-08 21:34:05 +08:00
bfin_jtag_comm.c
cyclades.c TTY: add tty_port_tty_hangup helper 2013-03-18 16:24:29 -07:00
ehv_bytechan.c TTY: ehv_bytechan: add missing platform_driver_unregister() when module exit 2013-05-20 12:15:59 -07:00
goldfish.c
isicom.c
Kconfig tty: metag_da: Add metag DA TTY driver 2013-02-06 11:10:17 -08:00
Makefile tty: metag_da: Add metag DA TTY driver 2013-02-06 11:10:17 -08:00
metag_da.c tty: metag_da: avoid getting tty kref in dashtty_timer() 2013-02-06 11:10:17 -08:00
moxa.c rk: revert 20f3d0b+v3.0.66 to v3.0 2013-11-08 21:34:05 +08:00
moxa.h
mxser.c tty: mxser: Fix build warning introduced by dfc7b837c7 (Re: linux-next: build warning after merge of the tty.current tree) 2013-05-22 10:26:02 -07:00
mxser.h
n_gsm.c rk: revert 20f3d0b+v3.0.66 to v3.0 2013-11-08 21:34:05 +08:00
n_hdlc.c
n_r3964.c
n_tracerouter.c
n_tracesink.c
n_tracesink.h
n_tty.c rk: revert 20f3d0b+v3.0.66 to v3.0 2013-11-08 21:34:05 +08:00
nozomi.c TTY: add tty_port_tty_hangup helper 2013-03-18 16:24:29 -07:00
pty.c rk: revert 20f3d0b+v3.0.66 to v3.0 2013-11-08 21:34:05 +08:00
rocket.c TTY: rocket, fix more no-PCI warnings 2013-05-20 12:15:59 -07:00
rocket.h
rocket_int.h
synclink.c TTY: synclink: fix DTR being raised on hang up 2013-04-12 14:08:17 -07:00
synclink_gt.c TTY: synclink_gt: fix DTR being raised on hang up 2013-04-12 14:08:17 -07:00
synclinkmp.c TTY: synclinkmp: fix DTR being raised on hang up 2013-04-12 14:08:18 -07:00
sysrq.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2013-05-01 13:20:04 -07:00
tty_audit.c audit: do not needlessly take a lock in tty_audit_exit 2013-04-30 15:31:28 -04:00
tty_buffer.c tty: Fix race condition if flushing tty flip buffers 2013-04-09 17:05:02 -07:00
tty_io.c rk: revert 20f3d0b+v3.0.66 to v3.0 2013-11-08 21:34:05 +08:00
tty_ioctl.c tty: Fix SIGTTOU not sent with tcflush() 2013-10-05 07:13:10 -07:00
tty_ldisc.c rk: revert 20f3d0b+v3.0.66 to v3.0 2013-11-08 21:34:05 +08:00
tty_mutex.c
tty_port.c rk: revert 20f3d0b+v3.0.66 to v3.0 2013-11-08 21:34:05 +08:00