On Fri, Nov 27, 2015 at 12:21:44PM +0200, Jani Nikula wrote: > For DSI, the pre_pll_enable and the pre_enable hooks are called > back-to-back on all platforms that support DSI. The distinction is > artificial for DSI, for which we enable the DSI PLL in the encoder > hooks. Do everything in pre_enable, and remove DSI pre_pll_enable hook. > > Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx> I was eyeing this same thing at some point. For the series: Reviewed-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/i915/intel_dsi.c | 16 +++++----------- > 1 file changed, 5 insertions(+), 11 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_dsi.c b/drivers/gpu/drm/i915/intel_dsi.c > index efb5a27dd49c..08c46c49c481 100644 > --- a/drivers/gpu/drm/i915/intel_dsi.c > +++ b/drivers/gpu/drm/i915/intel_dsi.c > @@ -462,6 +462,8 @@ static void intel_dsi_enable(struct intel_encoder *encoder) > intel_panel_enable_backlight(intel_dsi->attached_connector); > } > > +static void intel_dsi_prepare(struct intel_encoder *intel_encoder); > + > static void intel_dsi_pre_enable(struct intel_encoder *encoder) > { > struct drm_device *dev = encoder->base.dev; > @@ -474,6 +476,9 @@ static void intel_dsi_pre_enable(struct intel_encoder *encoder) > > DRM_DEBUG_KMS("\n"); > > + intel_dsi_prepare(encoder); > + intel_enable_dsi_pll(encoder); > + > /* Panel Enable over CRC PMIC */ > if (intel_dsi->gpio_panel) > gpiod_set_value_cansleep(intel_dsi->gpio_panel, 1); > @@ -1026,15 +1031,6 @@ static void intel_dsi_prepare(struct intel_encoder *intel_encoder) > } > } > > -static void intel_dsi_pre_pll_enable(struct intel_encoder *encoder) > -{ > - DRM_DEBUG_KMS("\n"); > - > - intel_dsi_prepare(encoder); > - intel_enable_dsi_pll(encoder); > - > -} > - > static enum drm_connector_status > intel_dsi_detect(struct drm_connector *connector, bool force) > { > @@ -1154,9 +1150,7 @@ void intel_dsi_init(struct drm_device *dev) > > drm_encoder_init(dev, encoder, &intel_dsi_funcs, DRM_MODE_ENCODER_DSI); > > - /* XXX: very likely not all of these are needed */ > intel_encoder->compute_config = intel_dsi_compute_config; > - intel_encoder->pre_pll_enable = intel_dsi_pre_pll_enable; > intel_encoder->pre_enable = intel_dsi_pre_enable; > intel_encoder->enable = intel_dsi_enable_nop; > intel_encoder->disable = intel_dsi_pre_disable; > -- > 2.1.4 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Ville Syrjälä Intel OTC _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx