Re: [PATCH 4/4] drm/i915/dp: read DPCD PSR capability only on eDP

Paulo Zanoni
2013-09-20T20:57:07Z

2013/9/20 Todd Previte <tprevite@gmail.com>:
> On 09/20/2013 06:42 AM, Jani Nikula wrote:
>>
>> Reduce AUX transactions for non-eDP.
>>
>> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>> ---
>> drivers/gpu/drm/i915/intel_dp.c | 13 ++++++++-----
>> 1 file changed, 8 insertions(+), 5 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/intel_dp.c
>> b/drivers/gpu/drm/i915/intel_dp.c
>> index dd780bf..f2e16a1 100644
>> --- a/drivers/gpu/drm/i915/intel_dp.c
>> +++ b/drivers/gpu/drm/i915/intel_dp.c
>> @@ -2691,11 +2691,14 @@ intel_dp_get_dpcd(struct intel_dp *intel_dp)
>> /* Check if the panel supports PSR */
>> memset(intel_dp->psr_dpcd, 0, sizeof(intel_dp->psr_dpcd));
>> - intel_dp_aux_native_read_retry(intel_dp, DP_PSR_SUPPORT,
>> - intel_dp->psr_dpcd,
>> - sizeof(intel_dp->psr_dpcd));
>> - if (is_edp_psr(intel_dp))
>> - DRM_DEBUG_KMS("Detected EDP PSR Panel.\n");
>> + if (is_edp(intel_dp)) {
>> + intel_dp_aux_native_read_retry(intel_dp, DP_PSR_SUPPORT,
>> + intel_dp->psr_dpcd,
>> +
>> sizeof(intel_dp->psr_dpcd));
>> + if (is_edp_psr(intel_dp))
>> + DRM_DEBUG_KMS("Detected EDP PSR Panel.\n");
>> + }
>> +
>> if (!(intel_dp->dpcd[DP_DOWNSTREAMPORT_PRESENT] &
>> DP_DWN_STRM_PORT_PRESENT))
>> return true; /* native DP sink */
>
>
> Couldn't you just use is_edp_psr() at the top and not need the second
> is_edp() inside the if() statement? As in:

No, because is_edp_psr() only makes sense after we do the DPCD read
that checks the PSR bit.

>
> + if (is_edp_psr(intel_dp)) {
>
> + intel_dp_aux_native_read_retry(intel_dp, DP_PSR_SUPPORT,
> + intel_dp->psr_dpcd,
> + sizeof(intel_dp->psr_dpcd));
> + DRM_DEBUG_KMS("Detected EDP PSR Panel.\n");
> + }
>
>
> -T
>
>
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

--
Paulo Zanoni