diff options
author | Lyude Paul <lyude@redhat.com> | 2020-11-13 19:14:15 -0500 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2021-01-29 16:49:14 +1000 |
commit | 1b38cf6b03e92eac993f49419904a3e441d647e4 (patch) | |
tree | aa33091e3827b79a7ece3b40986dd01352a25457 /tools/perf/scripts/python/exported-sql-viewer.py | |
parent | cd5609f715aa3a02c800097f50e83cc79346add8 (diff) |
drm/nouveau/kms/nv50-: Lookup current encoder/crtc from atomic state
Despite being an atomic driver, nouveau has a lot of leftover code that
relies on retrieving information regarding the new atomic state from
members of drm_encoder and drm_crtc. The first field being used,
drm_encoder.crtc, is deprecated for atomic drivers. The second field being
used is drm_crtc.state, which is only really sensible to use outside of an
atomic modeset.
So, add some helpers to lookup the current crtc for a given outp from the
atomic state. Then, convert most of the code in dispnv50/disp.c to use said
new helper, along with the relevant DRM atomic helpers for retrieving the
new encoder/crtc combinations for a new atomic state.
Note that we don't get rid of the nouveau_encoder.crtc field entirely for
three reasons:
- Legacy modesetting for pre-nv50 still uses it
- It doesn't cause any locking issues
- We need it for the HDA callbacks, as grabbing atomic modesetting locks in
those would be a mess.
Signed-off-by: Lyude Paul <lyude@redhat.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'tools/perf/scripts/python/exported-sql-viewer.py')
0 files changed, 0 insertions, 0 deletions