drm/etnaviv: move runtime PM balance into retire worker
authorLucas Stach <l.stach@pengutronix.de>
Thu, 7 Jan 2016 11:43:15 +0000 (12:43 +0100)
committerLucas Stach <l.stach@pengutronix.de>
Mon, 7 Mar 2016 14:36:50 +0000 (15:36 +0100)
commitd9fd0c7d259e6e041890764f21f3033d248e0ac8
tree37dd4d4980d15452b57616e6be075798ee3afa04
parenta90cc3f25065e5e8d5e336c75b04d5882912871f
drm/etnaviv: move runtime PM balance into retire worker

The retire worker is kicked for each fence, either the normal way
by signaling the fence from the event completion interrupt or by
the recover worker if the GPU got stuck. Moving the RPM put into
the retire worker allows us to have it in a single place for
both cases.

This also shaves off quite a bit of the CPU time spent in hardirq
context, as arming the autosuspend timer when the RPM refcount
drops to 0 is a relatively costly operation.

Tested-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
drivers/gpu/drm/etnaviv/etnaviv_gpu.c