Thank you for your contribution! Sashiko AI review found 1 potential issue(s) 
to consider:
- [High] Checking `dp_128b_132b_supported_link_rates.raw` before it is read 
from the DPCD register completely disables DP 2.0 UHBR support.
--

commit 11d06153280ec5dae6682a402606818b4f84b79d
Author: Jackie Dong <[email protected]>

drm/amd/display:Check dp_128b_132b_supported_link_rates.raw before link_rate 
setting

This patch modifies the DP 128b/132b capability check to also verify that
dp_128b_132b_supported_link_rates.raw is non-zero before attempting to read
and parse the specific UHBR link rates.

> diff --git 
> a/drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_capability.c 
> b/drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_capability.c
> --- a/drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_capability.c
> +++ b/drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_capability.c
> @@ -2079,7 +2079,8 @@ static bool retrieve_link_cap(struct dc_link *link)
>       if (!dpcd_read_sink_ext_caps(link))
>               link->dpcd_sink_ext_caps.raw = 0;
>  
> -     if (link->dpcd_caps.channel_coding_cap.bits.DP_128b_132b_SUPPORTED) {
> +     if (link->dpcd_caps.channel_coding_cap.bits.DP_128b_132b_SUPPORTED &&
> +                     link->dpcd_caps.dp_128b_132b_supported_link_rates.raw) {

[Severity: High]
Will this change completely disable DP 2.0 UHBR support? 

In retrieve_link_cap() in 
drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_capability.c,
dp_128b_132b_supported_link_rates.raw is now checked before it is actually 
read from the DPCD register. Since the dc_link struct is zero-initialized and
the read hasn't occurred yet, won't this raw value always evaluate to 0 upon
connection of any DP 2.0 monitor? 

This would cause the if condition to always fail, bypassing the actual read
block below and permanently preventing UHBR feature detection.

>               DC_LOG_DP2("128b/132b encoding is supported at link %d", 
> link->link_index);
>  
>               /* Read 128b/132b suppoerted link rates */
>               core_link_read_dpcd(link,
>                               DP_128B132B_SUPPORTED_LINK_RATES,
>                               
> &link->dpcd_caps.dp_128b_132b_supported_link_rates.raw,

-- 
Sashiko AI review ยท 
https://sashiko.dev/#/patchset/[email protected]?part=1

Reply via email to