drm: Do not call drm_dp_cec_set_edid() while registering DP connectors

Submitted by Souza, Jose on Oct. 11, 2018, 12:44 a.m.

Details

Message ID 20181011004439.4482-1-jose.souza@intel.com
State New
Headers show
Series "drm: Do not call drm_dp_cec_set_edid() while registering DP connectors" ( rev: 1 ) in DRI devel

Not browsing as part of any series.

Commit Message

Souza, Jose Oct. 11, 2018, 12:44 a.m.
drm_dp_cec_register_connector() is called when registering each DP
connector in DRM, while sounds a good idea register CEC adapters as
earlier as possible, it causes some driver initialization delay
trying to do DPCD transactions in disconnected connectors.

This change will cause no regressions as drm_dp_cec_set_edid() will
still be called in further detection of connected connectors with a
valid edid parameter.

This change reduced the module load of i915 by average 0.5sec in a
machine with just one DP port disconnected while reducing more than
3sec in a machine with 4 DP ports disconnected.

Cc: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
---
 drivers/gpu/drm/drm_dp_cec.c | 2 --
 1 file changed, 2 deletions(-)

Patch hide | download patch | download mbox

diff --git a/drivers/gpu/drm/drm_dp_cec.c b/drivers/gpu/drm/drm_dp_cec.c
index 8a718f85079a..b15cee85b702 100644
--- a/drivers/gpu/drm/drm_dp_cec.c
+++ b/drivers/gpu/drm/drm_dp_cec.c
@@ -424,8 +424,6 @@  void drm_dp_cec_register_connector(struct drm_dp_aux *aux, const char *name,
 	aux->cec.parent = parent;
 	INIT_DELAYED_WORK(&aux->cec.unregister_work,
 			  drm_dp_cec_unregister_work);
-
-	drm_dp_cec_set_edid(aux, NULL);
 }
 EXPORT_SYMBOL(drm_dp_cec_register_connector);
 

Comments

On 11/10/18 02:44, José Roberto de Souza wrote:
> drm_dp_cec_register_connector() is called when registering each DP
> connector in DRM, while sounds a good idea register CEC adapters as
> earlier as possible, it causes some driver initialization delay
> trying to do DPCD transactions in disconnected connectors.
> 
> This change will cause no regressions as drm_dp_cec_set_edid() will
> still be called in further detection of connected connectors with a
> valid edid parameter.
> 
> This change reduced the module load of i915 by average 0.5sec in a
> machine with just one DP port disconnected while reducing more than
> 3sec in a machine with 4 DP ports disconnected.
> 
> Cc: Hans Verkuil <hans.verkuil@cisco.com>
> Signed-off-by: José Roberto de Souza <jose.souza@intel.com>

I acked this on Sep 25th, but it seems you missed that.

Anyway:

Acked-by: Hans Verkuil <hans.verkuil@cisco.com>

Regards,

	Hans

> ---
>  drivers/gpu/drm/drm_dp_cec.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_dp_cec.c b/drivers/gpu/drm/drm_dp_cec.c
> index 8a718f85079a..b15cee85b702 100644
> --- a/drivers/gpu/drm/drm_dp_cec.c
> +++ b/drivers/gpu/drm/drm_dp_cec.c
> @@ -424,8 +424,6 @@ void drm_dp_cec_register_connector(struct drm_dp_aux *aux, const char *name,
>  	aux->cec.parent = parent;
>  	INIT_DELAYED_WORK(&aux->cec.unregister_work,
>  			  drm_dp_cec_unregister_work);
> -
> -	drm_dp_cec_set_edid(aux, NULL);
>  }
>  EXPORT_SYMBOL(drm_dp_cec_register_connector);
>  
>
On Thu, Oct 11, 2018 at 08:24:55AM +0200, Hans Verkuil wrote:
> On 11/10/18 02:44, José Roberto de Souza wrote:
> > drm_dp_cec_register_connector() is called when registering each DP
> > connector in DRM, while sounds a good idea register CEC adapters as
> > earlier as possible, it causes some driver initialization delay
> > trying to do DPCD transactions in disconnected connectors.
> > 
> > This change will cause no regressions as drm_dp_cec_set_edid() will
> > still be called in further detection of connected connectors with a
> > valid edid parameter.
> > 
> > This change reduced the module load of i915 by average 0.5sec in a
> > machine with just one DP port disconnected while reducing more than
> > 3sec in a machine with 4 DP ports disconnected.
> > 
> > Cc: Hans Verkuil <hans.verkuil@cisco.com>
> > Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
> 
> I acked this on Sep 25th, but it seems you missed that.

For next time around: Just go ahead and apply to drm-misc, since that
probably means the author doesn't have commit rights :-)

Anyway applied now, thanks for the patch.
-Daniel

> 
> Anyway:
> 
> Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
> 
> Regards,
> 
> 	Hans
> 
> > ---
> >  drivers/gpu/drm/drm_dp_cec.c | 2 --
> >  1 file changed, 2 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/drm_dp_cec.c b/drivers/gpu/drm/drm_dp_cec.c
> > index 8a718f85079a..b15cee85b702 100644
> > --- a/drivers/gpu/drm/drm_dp_cec.c
> > +++ b/drivers/gpu/drm/drm_dp_cec.c
> > @@ -424,8 +424,6 @@ void drm_dp_cec_register_connector(struct drm_dp_aux *aux, const char *name,
> >  	aux->cec.parent = parent;
> >  	INIT_DELAYED_WORK(&aux->cec.unregister_work,
> >  			  drm_dp_cec_unregister_work);
> > -
> > -	drm_dp_cec_set_edid(aux, NULL);
> >  }
> >  EXPORT_SYMBOL(drm_dp_cec_register_connector);
> >  
> > 
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel