Hi,

On 18/11/2025 14:40, Maxime Ripard wrote:
> Hi,
> 
> On Tue, Nov 18, 2025 at 05:22:49PM +0530, Harikrishna Shenoy wrote:
>> With the DBANC framework, the connector is no longer initialized in 
>> bridge_attach() when the display controller sets the 
>> DRM_BRIDGE_ATTACH_NO_CONNECTOR flag. 
>> This causes a null pointer dereference in cdns_mhdp_modeset_retry_fn() 
>> when trying to access &conn->dev->mode_config.mutex. 
>> Observed on a board where EDID read failed. 
>> (log: https://gist.github.com/Jayesh2000/233f87f9becdf1e66f1da6fd53f77429)
>>
>> Patch 1 adds a connector_ptr which takes care of both 
>> DBANC and !DBANC case by setting the pointer in appropriate hooks
>> and checking for pointer validity before accessing the connector.
>> Patch 2 adds mode validation hook to bridge fucntions.
>> Patch 3 fixes HDCP to work with both DBANC and !DBANC case by
>> moving HDCP state handling into the bridge atomic check in line with 
>> the DBANC model.
>> Patches 4,5 do necessary cleanup and alignment for using
>> connector pointer.
> 
> It's mentioned several times in your series, and it might be obvious to
> you, but documenting what is the "DBANC framework" is would be helpful.
> I have no idea what it's about, and it appears that Google doesn't know
> either.
Yes, I was a bit baffled initially. DRM_BRIDGE_ATTACH_NO_CONNECTOR.

I think it makes sense to only use "DBANC" if it's first introduced in
that patch. So don't have a patch that just uses "DBANC", even if the
previous patch did explain what it means. And if there's just one or two
"DBANC"s, just spell it out "DRM_BRIDGE_ATTACH_NO_CONNECTOR".

 Tomi

Reply via email to