On Thu, 20 Jul 2023, "Lisovskiy, Stanislav" <[email protected]> 
wrote:
> On Wed, Jul 19, 2023 at 01:48:33PM +0300, Stanislav Lisovskiy wrote:
>> BSpec clearly instructs us to use plane scale factor when calculating
>> relative data rate to be used when allocating DDB blocks for each plane.
>> For some reason we use scale factor for data_rate calculation, which is
>> used for BW calculations, however we are not using it for DDB calculations.
>> So lets fix it as described in BSpec 68907.
>> 
>> Signed-off-by: Stanislav Lisovskiy <[email protected]>
>> ---
>>  drivers/gpu/drm/i915/display/intel_atomic_plane.c | 7 ++++++-
>>  1 file changed, 6 insertions(+), 1 deletion(-)
>> 
>> diff --git a/drivers/gpu/drm/i915/display/intel_atomic_plane.c 
>> b/drivers/gpu/drm/i915/display/intel_atomic_plane.c
>> index 7d9578ebae556..60a492e186ab8 100644
>> --- a/drivers/gpu/drm/i915/display/intel_atomic_plane.c
>> +++ b/drivers/gpu/drm/i915/display/intel_atomic_plane.c
>> @@ -212,6 +212,7 @@ intel_plane_relative_data_rate(const struct 
>> intel_crtc_state *crtc_state,
>>      struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
>>      const struct drm_framebuffer *fb = plane_state->hw.fb;
>>      int width, height;
>> +    unsigned int rel_data_rate;
>>  
>>      if (plane->id == PLANE_CURSOR)
>>              return 0;
>> @@ -241,7 +242,11 @@ intel_plane_relative_data_rate(const struct 
>> intel_crtc_state *crtc_state,
>>              height /= 2;
>>      }
>>  
>> -    return width * height * fb->format->cpp[color_plane];
>> +    rel_data_rate = width * height * fb->format->cpp[color_plane];
>> +
>> +    return intel_adjusted_rate(&plane_state->uapi.src,
>> +                               &plane_state->uapi.dst,
>> +                               rel_data_rate);
>>  }
>>  
>>  int intel_plane_calc_min_cdclk(struct intel_atomic_state *state,
>> -- 
>> 2.37.3
>> 
>
> IGT failures are irrelevant here(test is aborted due to some timeout issue).

Going through old mails... I think errors like that still warrant a
retest before merging, because it can mask real issues that now won't
get tested.

BR,
Jani.

-- 
Jani Nikula, Intel Open Source Graphics Center

Reply via email to