From: "Maiti, Nabendu Bikash" <nabendu.bikash.maiti@intel.com>
To: Chris Wilson <chris@chris-wilson.co.uk>, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/i915: Moving no of scalers initialization to runtime init
Date: Wed, 23 Nov 2016 18:12:51 +0530 [thread overview]
Message-ID: <84bb5281-e39f-ffaf-3c0d-0c4882cc78c3@intel.com> (raw)
In-Reply-To: <20161122153526.GF8188@nuc-i3427.alporthouse.com>
On 11/22/2016 9:05 PM, Chris Wilson wrote:
> On Tue, Nov 22, 2016 at 05:31:05PM +0530, Nabendu Maiti wrote:
>
> Try to avoid confusing contractions (i.e. no no) and give us a verb in
> that sentence in that Subject line.
>
>> Number of scalers initialization is moved to runtime init from
>> intel_crtc_init for platform specific initialization.
>
> so that... Tell us why!
Next patch set.
>
>> Signed-off-by: Nabendu Maiti <nabendu.bikash.maiti@intel.com>
>> ---
>> drivers/gpu/drm/i915/i915_debugfs.c | 2 +-
>> drivers/gpu/drm/i915/i915_drv.h | 1 +
>> drivers/gpu/drm/i915/intel_device_info.c | 3 +++
>> drivers/gpu/drm/i915/intel_display.c | 10 ++--------
>> drivers/gpu/drm/i915/intel_drv.h | 4 ++--
>> 5 files changed, 9 insertions(+), 11 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
>> index b7f42c4..8349abe 100644
>> --- a/drivers/gpu/drm/i915/i915_debugfs.c
>> +++ b/drivers/gpu/drm/i915/i915_debugfs.c
>> @@ -3080,7 +3080,7 @@ static void intel_scaler_info(struct seq_file *m, struct intel_crtc *intel_crtc)
>> pipe_config->scaler_state.scaler_users,
>> pipe_config->scaler_state.scaler_id);
>>
>> - for (i = 0; i < SKL_NUM_SCALERS; i++) {
>> + for (i = 0; i < num_scalers; i++) {
>> struct intel_scaler *sc =
>> &pipe_config->scaler_state.scalers[i];
>
> Already applied.
>
Removed from this patch.
>> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
>> index be67aee..6eed9c2 100644
>> --- a/drivers/gpu/drm/i915/i915_drv.h
>> +++ b/drivers/gpu/drm/i915/i915_drv.h
>> @@ -731,6 +731,7 @@ struct intel_device_info {
>> u16 device_id;
>> u8 num_pipes;
>> u8 num_sprites[I915_MAX_PIPES];
>> + u8 num_scalers[I915_MAX_PIPES];
>> u8 gen;
>> u16 gen_mask;
>> u8 ring_mask; /* Rings supported by the HW */
>> diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c
>> index 185e3bb..ef26fa8 100644
>> --- a/drivers/gpu/drm/i915/intel_device_info.c
>> +++ b/drivers/gpu/drm/i915/intel_device_info.c
>> @@ -282,6 +282,9 @@ void intel_device_info_runtime_init(struct drm_i915_private *dev_priv)
>> info->num_sprites[PIPE_A] = 2;
>> info->num_sprites[PIPE_B] = 2;
>> info->num_sprites[PIPE_C] = 1;
>> + info->num_scalers[PIPE_A] = 2;
>> + info->num_scalers[PIPE_B] = 2;
>> + info->num_scalers[PIPE_C] = 1;
>> } else if (IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv)) {
>> for_each_pipe(dev_priv, pipe)
>> info->num_sprites[pipe] = 2;
>> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
>> index bd2c99e..d2023c4 100644
>> --- a/drivers/gpu/drm/i915/intel_display.c
>> +++ b/drivers/gpu/drm/i915/intel_display.c
>> @@ -15269,14 +15269,8 @@ static int intel_crtc_init(struct drm_i915_private *dev_priv, enum pipe pipe)
>> crtc_state->base.crtc = &intel_crtc->base;
>>
>> /* initialize shared scalers */
>> - if (INTEL_GEN(dev_priv) >= 9) {
>> - if (pipe == PIPE_C)
>> - intel_crtc->num_scalers = 1;
>> - else
>> - intel_crtc->num_scalers = SKL_NUM_SCALERS;
>> -
>> - skl_init_scalers(dev_priv, intel_crtc, crtc_state);
>> - }
>> + intel_crtc->num_scalers = dev_priv->info.num_scalers[pipe];
>
> Double space after =.
>
Done.
>> + skl_init_scalers(dev_priv, intel_crtc, crtc_state);
>
> Now called for everybody, not just gen9+. Why? Is it safe? If it was
> safe it would not be called skl_*(). intel_crtc->num_scalers is now a
> candidate for including in init_scalers().
>
Added check on numbers of scalers in each crtc in next version. If no
scaler, return without initialization. Also can move skl_init_scalers to
below plane initialization. Scaler is not utilized upto this point.
In next patches will change the function names more generic.
>> primary = intel_primary_plane_create(dev_priv, pipe);
>> if (IS_ERR(primary)) {
>> diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
>> index cd132c2..3f89607 100644
>> --- a/drivers/gpu/drm/i915/intel_drv.h
>> +++ b/drivers/gpu/drm/i915/intel_drv.h
>> @@ -430,8 +430,8 @@ struct intel_scaler {
>> };
>>
>> struct intel_crtc_scaler_state {
>> -#define SKL_NUM_SCALERS 2
>> - struct intel_scaler scalers[SKL_NUM_SCALERS];
>> +#define MAX_NUM_SCALERS 2
>> + struct intel_scaler scalers[MAX_NUM_SCALERS];
>
> Replaced the gen marker rather than the abreviation. So now we have
> what reads as NUM_NUM_SCALERS.
>
Reverting to original SKL_NUM_SCALERS, Will give more generic name later.
-Chris
>
--
Regards,
Nabendu
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2016-11-23 12:42 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-22 10:56 [PATCH] drm/i915: Moving scaler numbers to runtime init Nabendu Maiti
2016-11-22 10:52 ` Chris Wilson
2016-11-22 11:15 ` ✓ Fi.CI.BAT: success for " Patchwork
2016-11-22 12:01 ` [PATCH] drm/i915: Moving no of scalers initialization " Nabendu Maiti
2016-11-22 15:35 ` Chris Wilson
2016-11-23 12:42 ` Maiti, Nabendu Bikash [this message]
2016-11-23 13:57 ` [PATCH] drm/i915: Move number " Nabendu Maiti
2016-11-25 9:46 ` Nabendu Maiti
2016-11-25 9:44 ` Chris Wilson
2016-11-25 10:32 ` Maiti, Nabendu Bikash
2016-11-29 5:53 ` [PATCH v3] " Nabendu Maiti
2016-12-26 11:00 ` Maiti, Nabendu Bikash
2017-01-02 13:00 ` Ander Conselvan De Oliveira
2017-01-02 13:04 ` Ander Conselvan De Oliveira
2017-01-02 13:21 ` Maiti, Nabendu Bikash
2017-01-02 13:45 ` Ander Conselvan De Oliveira
2016-11-22 12:15 ` ✓ Fi.CI.BAT: success for drm/i915: Moving scaler numbers to runtime init (rev2) Patchwork
2016-11-23 14:16 ` ✓ Fi.CI.BAT: success for drm/i915: Moving scaler numbers to runtime init (rev3) Patchwork
2016-11-25 10:45 ` ✓ Fi.CI.BAT: success for drm/i915: Moving scaler numbers to runtime init (rev4) Patchwork
2016-11-29 6:15 ` ✓ Fi.CI.BAT: success for drm/i915: Moving scaler numbers to runtime init (rev5) Patchwork
2016-11-29 9:14 ` ✗ Fi.CI.BAT: warning " Patchwork
2016-11-29 9:26 ` Saarinen, Jani
2016-11-29 10:10 ` Maiti, Nabendu Bikash
2016-11-29 10:14 ` Saarinen, Jani
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=84bb5281-e39f-ffaf-3c0d-0c4882cc78c3@intel.com \
--to=nabendu.bikash.maiti@intel.com \
--cc=chris@chris-wilson.co.uk \
--cc=intel-gfx@lists.freedesktop.org \
/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