Message ID | 20200312053841.2794-6-vandita.kulkarni@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Add support for mipi dsi cmd mode | expand |
On Thu, 12 Mar 2020, Vandita Kulkarni <vandita.kulkarni@intel.com> wrote: > On dsi cmd mode we do not receive vblanks instead > we would get TE and these flags indicate TE is expected on > which port. > > Signed-off-by: Vandita Kulkarni <vandita.kulkarni@intel.com> > Reviewed-by: Jani Nikula <jani.nikula@intel.com> Pushed up to and including this patch. BR, Jani. > --- > drivers/gpu/drm/i915/display/icl_dsi.c | 18 ++++++++++++++++++ > 1 file changed, 18 insertions(+) > > diff --git a/drivers/gpu/drm/i915/display/icl_dsi.c b/drivers/gpu/drm/i915/display/icl_dsi.c > index 949f4867402b..d452037b1ac9 100644 > --- a/drivers/gpu/drm/i915/display/icl_dsi.c > +++ b/drivers/gpu/drm/i915/display/icl_dsi.c > @@ -1550,6 +1550,24 @@ static int gen11_dsi_compute_config(struct intel_encoder *encoder, > pipe_config->hw.adjusted_mode.private_flags &= > ~I915_MODE_FLAG_DSI_PERIODIC_CMD_MODE; > > + /* > + * In case of TE GATE cmd mode, we > + * receive TE from the slave if > + * dual link is enabled > + */ > + if (is_cmd_mode(intel_dsi)) { > + if (intel_dsi->ports == (BIT(PORT_B) | BIT(PORT_A))) > + pipe_config->hw.adjusted_mode.private_flags |= > + I915_MODE_FLAG_DSI_USE_TE1 | > + I915_MODE_FLAG_DSI_USE_TE0; > + else if (intel_dsi->ports == BIT(PORT_B)) > + pipe_config->hw.adjusted_mode.private_flags |= > + I915_MODE_FLAG_DSI_USE_TE1; > + else > + pipe_config->hw.adjusted_mode.private_flags |= > + I915_MODE_FLAG_DSI_USE_TE0; > + } > + > return 0; > }
diff --git a/drivers/gpu/drm/i915/display/icl_dsi.c b/drivers/gpu/drm/i915/display/icl_dsi.c index 949f4867402b..d452037b1ac9 100644 --- a/drivers/gpu/drm/i915/display/icl_dsi.c +++ b/drivers/gpu/drm/i915/display/icl_dsi.c @@ -1550,6 +1550,24 @@ static int gen11_dsi_compute_config(struct intel_encoder *encoder, pipe_config->hw.adjusted_mode.private_flags &= ~I915_MODE_FLAG_DSI_PERIODIC_CMD_MODE; + /* + * In case of TE GATE cmd mode, we + * receive TE from the slave if + * dual link is enabled + */ + if (is_cmd_mode(intel_dsi)) { + if (intel_dsi->ports == (BIT(PORT_B) | BIT(PORT_A))) + pipe_config->hw.adjusted_mode.private_flags |= + I915_MODE_FLAG_DSI_USE_TE1 | + I915_MODE_FLAG_DSI_USE_TE0; + else if (intel_dsi->ports == BIT(PORT_B)) + pipe_config->hw.adjusted_mode.private_flags |= + I915_MODE_FLAG_DSI_USE_TE1; + else + pipe_config->hw.adjusted_mode.private_flags |= + I915_MODE_FLAG_DSI_USE_TE0; + } + return 0; }