diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2010-07-01 15:33:45 +1000 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2010-07-13 10:13:15 +1000 |
commit | ec7fc4a1a7b322380d053fb04bfc4537be3cdfe5 (patch) | |
tree | c091a7c4a55072cf4fd455470691ef473c48e603 /drivers/gpu/drm/nouveau/nouveau_encoder.h | |
parent | df4cf1b72d726d788388858673fa61e42fdb9ad8 (diff) | |
download | op-kernel-dev-ec7fc4a1a7b322380d053fb04bfc4537be3cdfe5.zip op-kernel-dev-ec7fc4a1a7b322380d053fb04bfc4537be3cdfe5.tar.gz |
drm/nv50: supply encoder disable() hook for SOR outputs
Allows us to remove a driver hack that used to be necessary to disable
encoders in certain situations before setting up a mode. The DRM has
better knowledge of when this is needed than the driver does.
This fixes a number of display switching issues.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/nouveau_encoder.h')
-rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_encoder.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_encoder.h b/drivers/gpu/drm/nouveau/nouveau_encoder.h index e4442e2..a1a0d48 100644 --- a/drivers/gpu/drm/nouveau/nouveau_encoder.h +++ b/drivers/gpu/drm/nouveau/nouveau_encoder.h @@ -38,13 +38,15 @@ struct nouveau_encoder { struct dcb_entry *dcb; int or; + /* different to drm_encoder.crtc, this reflects what's + * actually programmed on the hw, not the proposed crtc */ + struct drm_crtc *crtc; + struct drm_display_mode mode; int last_dpms; struct nv04_output_reg restore; - void (*disconnect)(struct nouveau_encoder *encoder); - union { struct { int mc_unknown; |