[Intel-gfx] [PATCH v2 08/25] drm/i915/tgl: use TRANSCODER_EDP_VDSC on transcoder A
Manasi Navare
manasi.d.navare at intel.com
Tue Jul 9 20:00:53 UTC 2019
On Tue, Jul 09, 2019 at 01:07:17AM +0000, Souza, Jose wrote:
> On Mon, 2019-07-08 at 16:16 -0700, Lucas De Marchi wrote:
> > From: José Roberto de Souza <jose.souza at intel.com>
> >
> > On TGL the special EDP transcoder is gone and it should be handled by
> > transcoder A.
> >
> > v2 (Lucas):
> > - Reuse POWER_DOMAIN_TRANSCODER_EDP_VDSC (suggested by Ville)
> > - Use crtc->dev since new_crtc_state->state may be NULL on atomic
> > commit (suggested by Maarten)
>
> As we are reusing would be nice also rename it to something like:
> POWER_DOMAIN_TRANSCODER_VDSC_PW2
> POWER_DOMAIN_LOW_POWER_TRANSCODER_VDSC /
> POWER_DOMAIN_LP_TRANSCODER_VDSC
We did struggle initially as well to find an appropriate name and settled for
POWER_DOMAIN_TRANSCODER_EDP_VDSC but I agree that now since it is not just for EDP
but for Transcoder A which could be any connector, its better to rename the power well
POWER_DOMAIN_TRANSCODER_VDSC_PW2 or
POWER_DOMAIN_TRANSCODER_EDP_A_VDSC and then in the comment clearly mention that
for Gen 11 it is for Transcoder EDP VDSC and then Gen 12 + it is for Transcoder A VDSC
Manasi
>
> >
> > Cc: Imre Deak <imre.deak at intel.com>
> > Signed-off-by: José Roberto de Souza <jose.souza at intel.com>
> > Signed-off-by: Lucas De Marchi <lucas.demarchi at intel.com>
> > ---
> > drivers/gpu/drm/i915/display/intel_vdsc.c | 9 ++++++---
> > 1 file changed, 6 insertions(+), 3 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/display/intel_vdsc.c
> > b/drivers/gpu/drm/i915/display/intel_vdsc.c
> > index ffec807b8960..c27912f552f0 100644
> > --- a/drivers/gpu/drm/i915/display/intel_vdsc.c
> > +++ b/drivers/gpu/drm/i915/display/intel_vdsc.c
> > @@ -459,16 +459,19 @@ int intel_dp_compute_dsc_params(struct intel_dp
> > *intel_dp,
> > enum intel_display_power_domain
> > intel_dsc_power_domain(const struct intel_crtc_state *crtc_state)
> > {
> > + struct drm_i915_private *i915 = to_i915(crtc_state->base.crtc-
> > >dev);
> > enum transcoder cpu_transcoder = crtc_state->cpu_transcoder;
> >
> > /*
> > - * On ICL VDSC/joining for eDP transcoder uses a separate power
> > well PW2
> > - * This requires POWER_DOMAIN_TRANSCODER_EDP_VDSC power domain.
> > + * On ICL+ VDSC/joining for eDP/A transcoder uses a separate
> > power well
> > + * PW2. This requires POWER_DOMAIN_TRANSCODER_EDP_VDSC power
> > domain.
> > * For any other transcoder, VDSC/joining uses the power well
> > associated
> > * with the pipe/transcoder in use. Hence another reference on
> > the
> > * transcoder power domain will suffice.
> > */
> > - if (cpu_transcoder == TRANSCODER_EDP)
> > + if (INTEL_GEN(i915) >= 12 && cpu_transcoder == TRANSCODER_A)
> > + return POWER_DOMAIN_TRANSCODER_EDP_VDSC;
> > + else if (cpu_transcoder == TRANSCODER_EDP)
> > return POWER_DOMAIN_TRANSCODER_EDP_VDSC;
> > else
> > return POWER_DOMAIN_TRANSCODER(cpu_transcoder);
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
More information about the Intel-gfx
mailing list