From: Ander Conselvan de Oliveira <conselvan2@gmail.com>
To: "Daniel Vetter" <daniel@ffwll.ch>,
"Ville Syrjälä" <ville.syrjala@linux.intel.com>
Cc: Ander Conselvan de Oliveira
<ander.conselvan.de.oliveira@intel.com>,
intel-gfx@lists.freedesktop.org, shuang.he@linux.intel.com
Subject: Re: [PATCH 5/8] drm/i915: Don't access to crtc->new_config from intel_mode_max_pixclk()
Date: Thu, 18 Dec 2014 17:06:28 +0200 [thread overview]
Message-ID: <5492ED74.1080904@gmail.com> (raw)
In-Reply-To: <20141216093434.GR2711@phenom.ffwll.local>
On 16-12-2014 11:34, Daniel Vetter wrote:
> On Mon, Dec 15, 2014 at 09:24:23PM +0200, Ville Syrjälä wrote:
>> On Thu, Dec 11, 2014 at 02:38:08PM +0200, Ander Conselvan de Oliveira wrote:
>>> So that we can get rid of the new_config pointer later.
>>>
>>> Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
>>> ---
>>> drivers/gpu/drm/i915/intel_display.c | 30 ++++++++++++++++++++++--------
>>> 1 file changed, 22 insertions(+), 8 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
>>> index da5af23..a9f3034 100644
>>> --- a/drivers/gpu/drm/i915/intel_display.c
>>> +++ b/drivers/gpu/drm/i915/intel_display.c
>>> @@ -4897,27 +4897,39 @@ static int valleyview_calc_cdclk(struct drm_i915_private *dev_priv,
>>> }
>>>
>>> /* compute the max pixel clock for new configuration */
>>> -static int intel_mode_max_pixclk(struct drm_i915_private *dev_priv)
>>> +static int intel_mode_max_pixclk(struct drm_i915_private *dev_priv,
>>> + struct intel_crtc *mode_set_crtc,
>>> + struct intel_crtc_state *crtc_new_state)
>>> {
>>> struct drm_device *dev = dev_priv->dev;
>>> struct intel_crtc *intel_crtc;
>>> int max_pixclk = 0;
>>> + int pixclk;
>>>
>>> for_each_intel_crtc(dev, intel_crtc) {
>>> - if (intel_crtc->new_enabled)
>>> - max_pixclk = max(max_pixclk,
>>> - intel_crtc->new_config->base.adjusted_mode.crtc_clock);
>>> + if (!intel_crtc->new_enabled)
>>> + continue;
>>> +
>>> + if (intel_crtc == mode_set_crtc)
>>> + pixclk = crtc_new_state->base.adjusted_mode.crtc_clock;
>>> + else
>>> + pixclk = intel_crtc->config->base.adjusted_mode.crtc_clock;
>>> +
>>> + max_pixclk = max(max_pixclk, pixclk);
>>
>> I think we're now going backwards. We want atomic modesets, so we
>> need to be able to compute this stuff when modesetting multiple pipes.
>> That was precisely why I added new_config.
>
> We've already started going backwards in this area with the latest round
> of fastboot patches from Jesse. I've discussed this a bit with him and the
> plan is that we'll do it that way and Ander gets shafted^W signed up to
> sort out the mess.
>
> But yeah if there's a shortcut to avoid some of that detour it would be
> good.
I should improve the commit message. I agree this patch is a step
backwards, but the idea is to move stuff out of the way so we can move
forwards again. The ultimate goal is to pass a drm_atomic_state struct,
and derive the pipe_config from that.
Ander
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2014-12-18 15:06 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-12-11 12:38 [PATCH 0/8] Resend of drm/i915: Keep drm_crtc->state in sync Ander Conselvan de Oliveira
2014-12-11 12:38 ` [PATCH 1/8] drm/i915: Rename struct intel_crtc_config to intel_crtc_state Ander Conselvan de Oliveira
2014-12-11 12:38 ` [PATCH 2/8] drm/i915: Embedded struct drm_crtc_state in intel_crtc_state Ander Conselvan de Oliveira
2014-12-11 12:38 ` [PATCH 3/8] drm/i915: Pass new_config down do crtc_compute_clock Ander Conselvan de Oliveira
2014-12-11 12:38 ` [PATCH 4/8] drm/i915: Use local pipe_config varariable when available Ander Conselvan de Oliveira
2014-12-15 18:37 ` Matt Roper
2014-12-15 19:21 ` Ville Syrjälä
2014-12-16 9:25 ` Daniel Vetter
2014-12-11 12:38 ` [PATCH 5/8] drm/i915: Don't access to crtc->new_config from intel_mode_max_pixclk() Ander Conselvan de Oliveira
2014-12-15 19:17 ` Matt Roper
2014-12-15 19:30 ` Ville Syrjälä
2014-12-16 9:29 ` Daniel Vetter
2014-12-15 19:24 ` Ville Syrjälä
2014-12-16 9:34 ` Daniel Vetter
2014-12-18 15:06 ` Ander Conselvan de Oliveira [this message]
2014-12-11 12:38 ` [PATCH 6/8] drm/i915: Remove intel_crtc->new_config pointer Ander Conselvan de Oliveira
2014-12-11 12:38 ` [PATCH 7/8] drm/i915: Make intel_crtc->config a pointer Ander Conselvan de Oliveira
2014-12-15 19:30 ` Matt Roper
2014-12-11 12:38 ` [PATCH 8/8] drm/i915: Keep drm_crtc->state in sync with intel_crtc->config Ander Conselvan de Oliveira
2014-12-11 12:49 ` shuang.he
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5492ED74.1080904@gmail.com \
--to=conselvan2@gmail.com \
--cc=ander.conselvan.de.oliveira@intel.com \
--cc=daniel@ffwll.ch \
--cc=intel-gfx@lists.freedesktop.org \
--cc=shuang.he@linux.intel.com \
--cc=ville.syrjala@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox