[PATCH] drm/ast: Zero is missing in detect function

Ainux Wang ainux.wang at gmail.com
Fri Jul 16 09:45:46 UTC 2021


Thomas Zimmermann <tzimmermann at suse.de> 于2021年7月16日周五 下午2:29写道:
>
> Hi
>
> Am 16.07.21 um 03:56 schrieb ainux.wang at gmail.com:
> > From: "Ainux.Wang" <ainux.wang at gmail.com>
> >
> > The function ast_get_modes() will also return 0, when it try to get the
> > edid, but it also do not get the edid.
> >
> > Signed-off-by: Ainux.Wang <ainux.wang at gmail.com>
> > ---
> >   drivers/gpu/drm/ast/ast_mode.c | 2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/ast/ast_mode.c b/drivers/gpu/drm/ast/ast_mode.c
> > index e5996ae03c49..b7dcf7821ec6 100644
> > --- a/drivers/gpu/drm/ast/ast_mode.c
> > +++ b/drivers/gpu/drm/ast/ast_mode.c
> > @@ -1299,7 +1299,7 @@ static enum drm_connector_status ast_connector_detect(struct drm_connector
> >       int r;
> >
> >       r = ast_get_modes(connector);
> > -     if (r < 0)
> > +     if (r <= 0)
> >               return connector_status_disconnected;
>
> Thanks for caring.
>
> I thought about the case of (r == 0) when reviewing the patch that added
> it, but found it to be correct. If (r < 0) it's clearly an error and we
> should return 'disconnected'. If (r == 0), we were able to retrieve the
> EDID, but could not find any meaningful modes. Still, it's 'connected'.
>
Hi,Thomas
Thanks review.
I see, the drm_add_edid_modes() will retrun0 in ast_get_modes().
Best regards,
Ainux Wang.
> Unless there is a concrete bug where the status is mis-detected, I think
> that the current code is correct.
>
> Best regards
> Thomas
>
> >
> >       return connector_status_connected;
> >
>
> --
> Thomas Zimmermann
> Graphics Driver Developer
> SUSE Software Solutions Germany GmbH
> Maxfeldstr. 5, 90409 Nürnberg, Germany
> (HRB 36809, AG Nürnberg)
> Geschäftsführer: Felix Imendörffer
>


More information about the dri-devel mailing list