summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_drv.h
diff options
context:
space:
mode:
authorVille Syrjälä2014-03-03 15:15:28 +0100
committerDaniel Vetter2014-03-10 21:33:26 +0100
commitbc079e8b1684e1de505ec06f8c2339ae60a329e8 (patch)
treebcdd88e98b1e4126350a2abc929267e425ad21b1 /drivers/gpu/drm/i915/intel_drv.h
parentdrm/i915: move dev_priv->suspend around (diff)
downloadkernel-qcow2-linux-bc079e8b1684e1de505ec06f8c2339ae60a329e8.tar.gz
kernel-qcow2-linux-bc079e8b1684e1de505ec06f8c2339ae60a329e8.tar.xz
kernel-qcow2-linux-bc079e8b1684e1de505ec06f8c2339ae60a329e8.zip
drm/i915: Make encoder cloning more flexible
Currently we allow encoders to indicate whether they can be part of a cloned set with just one flag. That's not flexible enough to describe the actual hardware capabilities. Instead make it a bitmask of encoder types with which the current encoder can be cloned. For now we set the bitmask to allow DVO+DVO and DVO+VGA, which should match what the old boolean flag allowed. We will add some more cloning options in the future. Note that this patch also removes the encoder.possible_clones setting from encoder setup code - we compute this dynamically. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@gmail.com> [danvet: Add Ville's explanation why removing the encoder possible_clones is save.] Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_drv.h')
-rw-r--r--drivers/gpu/drm/i915/intel_drv.h6
1 files changed, 1 insertions, 5 deletions
diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
index 5360d1628263..2546cae0b4f0 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -125,11 +125,7 @@ struct intel_encoder {
struct intel_crtc *new_crtc;
int type;
- /*
- * Intel hw has only one MUX where encoders could be clone, hence a
- * simple flag is enough to compute the possible_clones mask.
- */
- bool cloneable;
+ unsigned int cloneable;
bool connectors_active;
void (*hot_plug)(struct intel_encoder *);
bool (*compute_config)(struct intel_encoder *,