diff options
| author | Daniel Vetter <[email protected]> | 2015-02-13 21:03:42 +0100 |
|---|---|---|
| committer | Daniel Vetter <[email protected]> | 2015-02-23 10:53:38 +0100 |
| commit | 9625604cebcb3f5be2e692408274734e8ae63979 (patch) | |
| tree | 50cd339be396fcedf52d3a71827f8f24a0b95756 /tools/perf/scripts/python/sched-migration.py | |
| parent | d4495cbaa5869d2ce8f4b1c9331d3a19b24eb98b (diff) | |
drm/irq: Add drm_crtc_vblank_reset
At driver load we need to tell the vblank code about the state of the
pipes, so that the logic around reject vblank_get when the pipe is off
works correctly.
Thus far i915 used drm_vblank_off, but one of the side-effects of it
is that it also saves the vblank counter. And for that it calls down
into the ->get_vblank_counter hook. Which isn't really a good idea
when the pipe is off for a few reasons:
- With runtime pm the register might not respond.
- If the pipe is off some datastructures might not be around or
unitialized.
The later is what blew up on gen3: We look at intel_crtc->config to
compute the vblank counter, and for a disabled pipe at boot-up that's
just not there. Thus far this was papered over by a check for
intel_crtc->active, but I want to get rid of that (since it's fairly
race, vblank hooks are called from all kinds of places).
So prep for that by adding a _reset functions which only does what we
really need to be done at driver load: Mark the vblank pipe as off,
but don't do any vblank counter saving or event flushing - neither of
that is required.
v2: Clarify the code flow slightly as suggested by Ville.
v3: Fix kerneldoc spelling, spotted by Laurent.
Cc: Ville Syrjälä <[email protected]>
Cc: Laurent Pinchart <[email protected]>
Cc: Imre Deak <[email protected]>
Reviewed-by: Imre Deak <[email protected]> (v2)
Acked-by: Dave Airlie <[email protected]>
Acked-by: Laurent Pinchart <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/sched-migration.py')
0 files changed, 0 insertions, 0 deletions