[Freedreno] [PATCH] drm: improve the documentation of connector hpd ops

Abhinav Kumar quic_abhinavk at quicinc.com
Mon Dec 4 17:45:19 UTC 2023



On 12/3/2023 10:14 AM, Dmitry Baryshkov wrote:
> On Sun, 3 Dec 2023 at 16:24, Laurent Pinchart
> <laurent.pinchart at ideasonboard.com> wrote:
>>
>> Hi Abhinav,
>>
>> Thank you for the patch (and thank to Dmitry for pinging me on IRC, this
>> patch got burried in my inbox).
>>
>> On Wed, Sep 20, 2023 at 01:13:58PM -0700, Abhinav Kumar wrote:
>>> While making the changes in [1], it was noted that the documentation
>>> of the enable_hpd() and disable_hpd() does not make it clear that
>>> these ops should not try to do hpd state maintenance and should only
>>> attempt to enable/disable hpd related hardware for the connector.
>>
>> s/attempt to //
> 
> I can probably fix this while applying the patch.
> 

Thank you Laurent and Dmitry.

>>
>>>
>>> The state management of these calls to make sure these calls are
>>> balanced is handled by the DRM core and we should keep it that way
>>> to minimize the overhead in the drivers which implement these ops.
>>>
>>> [1]: https://patchwork.freedesktop.org/patch/558387/
>>>
>>
>> You could add a
>>
>> Suggested-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
>>
>>> Signed-off-by: Abhinav Kumar <quic_abhinavk at quicinc.com>
>>
>> Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
>>
>>> ---
>>>   include/drm/drm_modeset_helper_vtables.h | 10 ++++++++++
>>>   1 file changed, 10 insertions(+)
>>>
>>> diff --git a/include/drm/drm_modeset_helper_vtables.h b/include/drm/drm_modeset_helper_vtables.h
>>> index e3c3ac615909..a33cf7488737 100644
>>> --- a/include/drm/drm_modeset_helper_vtables.h
>>> +++ b/include/drm/drm_modeset_helper_vtables.h
>>> @@ -1154,6 +1154,11 @@ struct drm_connector_helper_funcs {
>>>         * This operation is optional.
>>>         *
>>>         * This callback is used by the drm_kms_helper_poll_enable() helpers.
>>> +      *
>>> +      * This operation does not need to perform any hpd state tracking as
>>> +      * the DRM core handles that maintenance and ensures the calls to enable
>>> +      * and disable hpd are balanced.
>>> +      *
>>>         */
>>>        void (*enable_hpd)(struct drm_connector *connector);
>>>
>>> @@ -1165,6 +1170,11 @@ struct drm_connector_helper_funcs {
>>>         * This operation is optional.
>>>         *
>>>         * This callback is used by the drm_kms_helper_poll_disable() helpers.
>>> +      *
>>> +      * This operation does not need to perform any hpd state tracking as
>>> +      * the DRM core handles that maintenance and ensures the calls to enable
>>> +      * and disable hpd are balanced.
>>> +      *
>>>         */
>>>        void (*disable_hpd)(struct drm_connector *connector);
>>>   };
>>
>> --
>> Regards,
>>
>> Laurent Pinchart
> 
> 
> 


More information about the Freedreno mailing list