drm/vc4: Enable runtime PM.
authorEric Anholt <eric@anholt.net>
Sat, 6 Feb 2016 01:41:49 +0000 (17:41 -0800)
committerEric Anholt <eric@anholt.net>
Tue, 16 Feb 2016 20:21:00 +0000 (12:21 -0800)
commit001bdb55d9eb72a9e2d5b623bacfc52da74ae03e
tree3a980e9aa3985a91c16e65c4ec24a04e589cac37
parentc4ce60dc30912df09b2438f1e5594eae1ef64d1e
drm/vc4: Enable runtime PM.

This may actually get us a feature that the closed driver didn't have:
turning off the GPU in between rendering jobs, while the V3D device is
still opened by the client.

There may be some tuning to be applied here to use autosuspend so that
we don't bounce the device's power so much, but in steady-state
GPU-bound rendering we keep the power on (since we keep multiple jobs
outstanding) and even if we power cycle on every job we can still
manage at least 680 fps.

More importantly, though, runtime PM will allow us to power off the
device to do a GPU reset.

v2: Switch #ifdef to CONFIG_PM not CONFIG_PM_SLEEP (caught by kbuild
    test robot)

Signed-off-by: Eric Anholt <eric@anholt.net>
drivers/gpu/drm/vc4/vc4_drv.h
drivers/gpu/drm/vc4/vc4_gem.c
drivers/gpu/drm/vc4/vc4_v3d.c