Re: [PATCH 13/14] drm/bridge: synopsys: Add DW HDMI QP TX controller driver

From: Cristian Ciocaltea
Date: Tue Jun 04 2024 - 17:35:10 EST


On 6/4/24 11:41 PM, Sam Ravnborg wrote:
> Hi Cristian.
>
> On Tue, Jun 04, 2024 at 10:32:04PM +0300, Cristian Ciocaltea wrote:
>> Hi Sam,
>>
>> On 6/1/24 5:32 PM, Sam Ravnborg wrote:
>>> Hi Cristian,
>>>
>>> a few drive-by comments below.
>>>
>>> Sam
>>>
>>>
>>>> +
>>>> +static const struct drm_connector_funcs dw_hdmi_qp_connector_funcs = {
>>>> + .fill_modes = drm_helper_probe_single_connector_modes,
>>>> + .detect = dw_hdmi_connector_detect,
>>>> + .destroy = drm_connector_cleanup,
>>>> + .force = dw_hdmi_qp_connector_force,
>>>> + .reset = drm_atomic_helper_connector_reset,
>>>> + .atomic_duplicate_state = drm_atomic_helper_connector_duplicate_state,
>>>> + .atomic_destroy_state = drm_atomic_helper_connector_destroy_state,
>>>> +};
>>>> +
>>>> +static int dw_hdmi_qp_bridge_attach(struct drm_bridge *bridge,
>>>> + enum drm_bridge_attach_flags flags)
>>>> +{
>>>> + struct dw_hdmi *hdmi = bridge->driver_private;
>>>> +
>>>> + if (flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR)
>>>> + return drm_bridge_attach(bridge->encoder, hdmi->next_bridge,
>>>> + bridge, flags);
>>>> +
>>>> + return dw_hdmi_connector_create(hdmi, &dw_hdmi_qp_connector_funcs);
>>>> +}
>>>
>>> Are there any users left that requires the display driver to create the
>>> connector?
>>> In other words - could this driver fail if DRM_BRIDGE_ATTACH_NO_CONNECTOR
>>> is not passed and drop dw_hdmi_connector_create()?
>>>
>>> I did not try to verify this - just a naive question.
>>
>> I've just tested this and it doesn't work - dw_hdmi_connector_create()
>> is still needed.
>
> Hmm, seems the display driver or some other bridge driver fails to
> support "DRM_BRIDGE_ATTACH_NO_CONNECTOR".
> what other drivers are involved?

Could it be related to the glue driver (updated in the next patch) which
is also responsible for setting up the encoder?

> Note that my comments here should be seen as potential future
> improvements, and do not block the patch from being used.

Thanks for the heads up! Will try to get back to this soon and investigate.

Cristian