[Intel-gfx] [PATCH v3 2/6] drm/i915: Remove the link rate and lane count loop in compute config
Jani Nikula
jani.nikula at linux.intel.com
Wed Sep 28 07:14:45 UTC 2016
On Wed, 28 Sep 2016, Manasi Navare <manasi.d.navare at intel.com> wrote:
> On Tue, Sep 27, 2016 at 04:39:38PM +0300, Jani Nikula wrote:
>> On Mon, 26 Sep 2016, Jani Nikula <jani.nikula at linux.intel.com> wrote:
>> > On Fri, 16 Sep 2016, Manasi Navare <manasi.d.navare at intel.com> wrote:
>> >> While configuring the pipe during modeset, it should use
>> >> max clock and max lane count and reduce the bpp until
>> >> the requested mode rate is less than or equal to
>> >> available link BW.
>> >> This is required to pass DP Compliance.
>> >
>> > As I wrote in reply to patch 1/6, this is not a DP spec requirement. The
>> > link policy maker can freely choose the link parameters as long as the
>> > sink supports them.
>>
>> Also double checked the DP link CTS spec. AFAICT none of the tests
>> expect the source to use the max clock or max lane count
>> directly. (Automated test request is another matter, and we should look
>> at it.)
>>
>> I think patches 1-2 are based on an incorrect interpretation of the spec
>> and tests.
>>
>> BR,
>> Jani.
>>
>
> I have the patches for handling the automated test request from DPR for
> compliance testing as mentioned in the CTS spec. But they have dependencies
> on these patches (1-6) so I will submit them after these get merged.
We need to re-evaluate the ordering of the patches.
BR,
Jani.
>
> Regards
> Manasi
>
>>
>> >
>> > BR,
>> > Jani.
>> >
>> >
>> >>
>> >> v3:
>> >> * Add Debug print if requested mode cannot be supported
>> >> during modeset (Dhinakaran Pandiyan)
>> >> v2:
>> >> * Removed the loop since we use max values of clock
>> >> and lane count (Dhinakaran Pandiyan)
>> >>
>> >> Signed-off-by: Manasi Navare <manasi.d.navare at intel.com>
>> >> ---
>> >> drivers/gpu/drm/i915/intel_dp.c | 22 ++++++++--------------
>> >> 1 file changed, 8 insertions(+), 14 deletions(-)
>> >>
>> >> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
>> >> index d81c67cb..65b4559 100644
>> >> --- a/drivers/gpu/drm/i915/intel_dp.c
>> >> +++ b/drivers/gpu/drm/i915/intel_dp.c
>> >> @@ -1644,23 +1644,17 @@ intel_dp_compute_config(struct intel_encoder *encoder,
>> >> for (; bpp >= 6*3; bpp -= 2*3) {
>> >> mode_rate = intel_dp_link_required(adjusted_mode->crtc_clock,
>> >> bpp);
>> >> + clock = max_clock;
>> >> + lane_count = max_lane_count;
>> >> + link_clock = common_rates[clock];
>> >> + link_avail = intel_dp_max_data_rate(link_clock,
>> >> + lane_count);
>> >>
>> >> - for (clock = min_clock; clock <= max_clock; clock++) {
>> >> - for (lane_count = min_lane_count;
>> >> - lane_count <= max_lane_count;
>> >> - lane_count <<= 1) {
>> >> -
>> >> - link_clock = common_rates[clock];
>> >> - link_avail = intel_dp_max_data_rate(link_clock,
>> >> - lane_count);
>> >> -
>> >> - if (mode_rate <= link_avail) {
>> >> - goto found;
>> >> - }
>> >> - }
>> >> - }
>> >> + if (mode_rate <= link_avail)
>> >> + goto found;
>> >> }
>> >>
>> >> + DRM_DEBUG_KMS("Requested Mode Rate not supported\n");
>> >> return false;
>> >>
>> >> found:
>>
>> --
>> Jani Nikula, Intel Open Source Technology Center
--
Jani Nikula, Intel Open Source Technology Center
More information about the Intel-gfx
mailing list