Re: [PATCH 09/20] drm/i915: Don't use encoder->new_crtc in compute_baseline_pipe_bpp()

Daniel Vetter
2015-03-26T16:44:36Z

On Fri, Mar 20, 2015 at 04:18:09PM +0200, Ander Conselvan de Oliveira wrote:
> Move towards atomic by using the legacy modeset's drm_atomic_state
> instead.
>
> Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
> ---
> drivers/gpu/drm/i915/intel_display.c | 12 ++++++++----
> 1 file changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 7851d6c..895cf67 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -10215,8 +10215,9 @@ compute_baseline_pipe_bpp(struct intel_crtc *crtc,
> struct intel_crtc_state *pipe_config)
> {
> struct drm_device *dev = crtc->base.dev;
> + struct drm_atomic_state *state;
> struct intel_connector *connector;
> - int bpp;
> + int bpp, i;
>
> switch (fb->pixel_format) {
> case DRM_FORMAT_C8:
> @@ -10256,10 +10257,13 @@ compute_baseline_pipe_bpp(struct intel_crtc *crtc,
>
> pipe_config->pipe_bpp = bpp;
>
> + state = pipe_config->base.state;
> +
> /* Clamp display bpp to EDID value */
> - for_each_intel_connector(dev, connector) {
> - if (!connector->new_encoder ||
> - connector->new_encoder->new_crtc != crtc)
> + for (i = 0; i < state->num_connector; i++) {
> + connector = to_intel_connector(state->connectors[i]);
> + if (!connector ||

Bikeshed: I think we should have the !connector case as a separate one,
since someone we should add a for_each_connector_in_state loop which
integrates the continue. Frobbed while applying.
-Daniel

> + state->connector_states[i]->crtc != &crtc->base)
> continue;
>
> connected_sink_compute_bpp(connector, pipe_config);
> --
> 2.1.0
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

--
Daniel Vetter
Software Engineer, Intel Corporation