remoteproc: add runtime PM autosuspend support
authorFernando Guzman Lugo <fernando.lugo@ti.com>
Thu, 9 Jun 2011 00:06:50 +0000 (19:06 -0500)
committerCris Jansson <cjansson@ti.com>
Mon, 22 Aug 2011 23:15:07 +0000 (18:15 -0500)
commitf664064ed136b0fc683e11ca1739f62815622eea
tree9f6e9424d8f2fed29f2377fc9a72485afda332de
parent84ea03c842dd7eb7907f01cd92b25f3e3fa14f38
remoteproc: add runtime PM autosuspend support

Going to suspend and resuming is a heavy task with much latency.  For that
reason remoteproc should go to suspend after some time of inactivity. However,
the remoteproc driver cannot know by itself if activity is being performing on
the remote processor (the driver is only in charge of turning it on/off). That
is why remoteproc adds new APIs to be notified when the remote processor is
used and then restart suspend timeout.

Remote proc users need to use these new APIs. Besides, if they have issues when
the remote processor goes to suspend without their knowledge, they need to
register for suspend/resume notifications. Returning an error in the
notification callback means they are using the remote processor and the
autosuspend should be cancelled.

Signed-off-by: Fernando Guzman Lugo <fernando.lugo@ti.com>
Signed-off-by: Iliyan Malchev <malchev@google.com>
drivers/remoteproc/Kconfig
drivers/remoteproc/remoteproc.c
include/linux/remoteproc.h