diff options
author | Chris Wilson | 2010-08-04 14:50:23 +0200 |
---|---|---|
committer | Eric Anholt | 2010-08-09 20:24:28 +0200 |
commit | ea5b213ad4b161463e76b63dbb115ea20e2200f0 (patch) | |
tree | b6d07b00b479fcc3849e0fdc4c98f498aa3645bf /drivers/gpu/drm/i915/intel_display.c | |
parent | drm/i915: Do not clobber the contents of TRANS_DP_CTL when enabling. (diff) | |
download | kernel-qcow2-linux-ea5b213ad4b161463e76b63dbb115ea20e2200f0.tar.gz kernel-qcow2-linux-ea5b213ad4b161463e76b63dbb115ea20e2200f0.tar.xz kernel-qcow2-linux-ea5b213ad4b161463e76b63dbb115ea20e2200f0.zip |
drm/i915: Subclass intel_encoder.
Subclass intel_encoder to reduce the pointer dance through
intel_encoder->dev_priv.
10 files changed, 896 insertions(+), 997 deletions(-)
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Eric Anholt <eric@anholt.net>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_display.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index c7f19ec88f98..9839494528ae 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -2537,6 +2537,20 @@ void intel_encoder_commit (struct drm_encoder *encoder) encoder_funcs->dpms(encoder, DRM_MODE_DPMS_ON); } +void intel_encoder_destroy(struct drm_encoder *encoder) +{ + struct intel_encoder *intel_encoder = enc_to_intel_encoder(encoder); + + if (intel_encoder->ddc_bus) + intel_i2c_destroy(intel_encoder->ddc_bus); + + if (intel_encoder->i2c_bus) + intel_i2c_destroy(intel_encoder->i2c_bus); + + drm_encoder_cleanup(encoder); + kfree(intel_encoder); +} + static bool intel_crtc_mode_fixup(struct drm_crtc *crtc, struct drm_display_mode *mode, struct drm_display_mode *adjusted_mode) |