diff mbox

[02/13] drm/i915/dvo: switch ->mode_fixup to ->compute_config

Message ID 1374435429-5543-3-git-send-email-daniel.vetter@ffwll.ch (mailing list archive)
State New, archived
Headers show

Commit Message

Daniel Vetter July 21, 2013, 7:36 p.m. UTC
This is the last encoder ->mode_fixup callback we have left, so
convert it.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
---
 drivers/gpu/drm/i915/intel_dvo.c | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

Comments

Rodrigo Vivi July 26, 2013, 6:39 p.m. UTC | #1
On Sun, Jul 21, 2013 at 4:36 PM, Daniel Vetter <daniel.vetter@ffwll.ch> wrote:
> This is the last encoder ->mode_fixup callback we have left, so
> convert it.
>
> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
> ---
>  drivers/gpu/drm/i915/intel_dvo.c | 14 ++++++++------
>  1 file changed, 8 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_dvo.c b/drivers/gpu/drm/i915/intel_dvo.c
> index d820884..1297ea3 100644
> --- a/drivers/gpu/drm/i915/intel_dvo.c
> +++ b/drivers/gpu/drm/i915/intel_dvo.c
> @@ -241,11 +241,11 @@ static int intel_dvo_mode_valid(struct drm_connector *connector,
>         return intel_dvo->dev.dev_ops->mode_valid(&intel_dvo->dev, mode);
>  }
>
> -static bool intel_dvo_mode_fixup(struct drm_encoder *encoder,
> -                                const struct drm_display_mode *mode,
> -                                struct drm_display_mode *adjusted_mode)
> +static bool intel_dvo_compute_config(struct intel_encoder *encoder,
> +                                    struct intel_crtc_config *pipe_config)
>  {
> -       struct intel_dvo *intel_dvo = enc_to_dvo(to_intel_encoder(encoder));
> +       struct intel_dvo *intel_dvo = enc_to_dvo(encoder);
> +       struct drm_display_mode *adjusted_mode = &pipe_config->adjusted_mode;
>
>         /* If we have timings from the BIOS for the panel, put them in
>          * to the adjusted mode.  The CRTC will be set up for this mode,
> @@ -267,7 +267,9 @@ static bool intel_dvo_mode_fixup(struct drm_encoder *encoder,
>         }
>
>         if (intel_dvo->dev.dev_ops->mode_fixup)
> -               return intel_dvo->dev.dev_ops->mode_fixup(&intel_dvo->dev, mode, adjusted_mode);
> +               return intel_dvo->dev.dev_ops->mode_fixup(&intel_dvo->dev,
> +                                                         &pipe_config->requested_mode,
> +                                                         adjusted_mode);

Since we are completely removing mode_fixup shouldn't we rip this out?

>
>         return true;
>  }
> @@ -370,7 +372,6 @@ static void intel_dvo_destroy(struct drm_connector *connector)
>  }
>
>  static const struct drm_encoder_helper_funcs intel_dvo_helper_funcs = {
> -       .mode_fixup = intel_dvo_mode_fixup,
>         .mode_set = intel_dvo_mode_set,
>  };
>
> @@ -468,6 +469,7 @@ void intel_dvo_init(struct drm_device *dev)
>         intel_encoder->enable = intel_enable_dvo;
>         intel_encoder->get_hw_state = intel_dvo_get_hw_state;
>         intel_encoder->get_config = intel_dvo_get_config;
> +       intel_encoder->compute_config = intel_dvo_compute_config;
>         intel_connector->get_hw_state = intel_dvo_connector_get_hw_state;
>
>         /* Now, try to find a controller */
> --
> 1.8.1.4
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Daniel Vetter July 26, 2013, 7:23 p.m. UTC | #2
On Fri, Jul 26, 2013 at 03:39:51PM -0300, Rodrigo Vivi wrote:
> On Sun, Jul 21, 2013 at 4:36 PM, Daniel Vetter <daniel.vetter@ffwll.ch> wrote:
> > This is the last encoder ->mode_fixup callback we have left, so
> > convert it.
> >
> > Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
> > ---
> >  drivers/gpu/drm/i915/intel_dvo.c | 14 ++++++++------
> >  1 file changed, 8 insertions(+), 6 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/intel_dvo.c b/drivers/gpu/drm/i915/intel_dvo.c
> > index d820884..1297ea3 100644
> > --- a/drivers/gpu/drm/i915/intel_dvo.c
> > +++ b/drivers/gpu/drm/i915/intel_dvo.c
> > @@ -241,11 +241,11 @@ static int intel_dvo_mode_valid(struct drm_connector *connector,
> >         return intel_dvo->dev.dev_ops->mode_valid(&intel_dvo->dev, mode);
> >  }
> >
> > -static bool intel_dvo_mode_fixup(struct drm_encoder *encoder,
> > -                                const struct drm_display_mode *mode,
> > -                                struct drm_display_mode *adjusted_mode)
> > +static bool intel_dvo_compute_config(struct intel_encoder *encoder,
> > +                                    struct intel_crtc_config *pipe_config)
> >  {
> > -       struct intel_dvo *intel_dvo = enc_to_dvo(to_intel_encoder(encoder));
> > +       struct intel_dvo *intel_dvo = enc_to_dvo(encoder);
> > +       struct drm_display_mode *adjusted_mode = &pipe_config->adjusted_mode;
> >
> >         /* If we have timings from the BIOS for the panel, put them in
> >          * to the adjusted mode.  The CRTC will be set up for this mode,
> > @@ -267,7 +267,9 @@ static bool intel_dvo_mode_fixup(struct drm_encoder *encoder,
> >         }
> >
> >         if (intel_dvo->dev.dev_ops->mode_fixup)
> > -               return intel_dvo->dev.dev_ops->mode_fixup(&intel_dvo->dev, mode, adjusted_mode);
> > +               return intel_dvo->dev.dev_ops->mode_fixup(&intel_dvo->dev,
> > +                                                         &pipe_config->requested_mode,
> > +                                                         adjusted_mode);
> 
> Since we are completely removing mode_fixup shouldn't we rip this out?

We are ripping out the encoder->mode_fixup callback. This here is the
dvo_slave->mode_fixup callback. dvo is gen2 only, so we won't ever touch
this again. Hence why I didn't go through all 6-7 dvo slave drivers and
give them the same treatment. I'll add a note to the commit message about
this when merging, presuming there's nothing else in the patch that needs
to be fixed up.
-Daniel

> 
> >
> >         return true;
> >  }
> > @@ -370,7 +372,6 @@ static void intel_dvo_destroy(struct drm_connector *connector)
> >  }
> >
> >  static const struct drm_encoder_helper_funcs intel_dvo_helper_funcs = {
> > -       .mode_fixup = intel_dvo_mode_fixup,
> >         .mode_set = intel_dvo_mode_set,
> >  };
> >
> > @@ -468,6 +469,7 @@ void intel_dvo_init(struct drm_device *dev)
> >         intel_encoder->enable = intel_enable_dvo;
> >         intel_encoder->get_hw_state = intel_dvo_get_hw_state;
> >         intel_encoder->get_config = intel_dvo_get_config;
> > +       intel_encoder->compute_config = intel_dvo_compute_config;
> >         intel_connector->get_hw_state = intel_dvo_connector_get_hw_state;
> >
> >         /* Now, try to find a controller */
> > --
> > 1.8.1.4
> >
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
> 
> 
> 
> -- 
> Rodrigo Vivi
> Blog: http://blog.vivi.eng.br
diff mbox

Patch

diff --git a/drivers/gpu/drm/i915/intel_dvo.c b/drivers/gpu/drm/i915/intel_dvo.c
index d820884..1297ea3 100644
--- a/drivers/gpu/drm/i915/intel_dvo.c
+++ b/drivers/gpu/drm/i915/intel_dvo.c
@@ -241,11 +241,11 @@  static int intel_dvo_mode_valid(struct drm_connector *connector,
 	return intel_dvo->dev.dev_ops->mode_valid(&intel_dvo->dev, mode);
 }
 
-static bool intel_dvo_mode_fixup(struct drm_encoder *encoder,
-				 const struct drm_display_mode *mode,
-				 struct drm_display_mode *adjusted_mode)
+static bool intel_dvo_compute_config(struct intel_encoder *encoder,
+				     struct intel_crtc_config *pipe_config)
 {
-	struct intel_dvo *intel_dvo = enc_to_dvo(to_intel_encoder(encoder));
+	struct intel_dvo *intel_dvo = enc_to_dvo(encoder);
+	struct drm_display_mode *adjusted_mode = &pipe_config->adjusted_mode;
 
 	/* If we have timings from the BIOS for the panel, put them in
 	 * to the adjusted mode.  The CRTC will be set up for this mode,
@@ -267,7 +267,9 @@  static bool intel_dvo_mode_fixup(struct drm_encoder *encoder,
 	}
 
 	if (intel_dvo->dev.dev_ops->mode_fixup)
-		return intel_dvo->dev.dev_ops->mode_fixup(&intel_dvo->dev, mode, adjusted_mode);
+		return intel_dvo->dev.dev_ops->mode_fixup(&intel_dvo->dev,
+							  &pipe_config->requested_mode,
+							  adjusted_mode);
 
 	return true;
 }
@@ -370,7 +372,6 @@  static void intel_dvo_destroy(struct drm_connector *connector)
 }
 
 static const struct drm_encoder_helper_funcs intel_dvo_helper_funcs = {
-	.mode_fixup = intel_dvo_mode_fixup,
 	.mode_set = intel_dvo_mode_set,
 };
 
@@ -468,6 +469,7 @@  void intel_dvo_init(struct drm_device *dev)
 	intel_encoder->enable = intel_enable_dvo;
 	intel_encoder->get_hw_state = intel_dvo_get_hw_state;
 	intel_encoder->get_config = intel_dvo_get_config;
+	intel_encoder->compute_config = intel_dvo_compute_config;
 	intel_connector->get_hw_state = intel_dvo_connector_get_hw_state;
 
 	/* Now, try to find a controller */