Re: [Intel-gfx] [PATCH] drm/i915/icl: implement the tc/legacy HPD {dis, }connect flows

2018-08-01 Thread Paulo Zanoni
Em Qua, 2018-08-01 às 09:22 +0100, Chris Wilson escreveu:
> Quoting Paulo Zanoni (2018-08-01 00:45:04)
> > +static bool icl_tc_phy_connect(struct drm_i915_private *dev_priv,
> > +  struct intel_digital_port *dig_port)
> > +{
> > +   enum tc_port tc_port = intel_port_to_tc(dev_priv, dig_port-
> > >base.port);
> > +   u32 val;
> > +
> > +   if (dig_port->tc_type != TC_PORT_LEGACY &&
> > +   dig_port->tc_type != TC_PORT_TYPEC)
> > +   return true;
> > +
> > +   val = I915_READ(PORT_TX_DFLEXDPPMS);
> > +   if (!(val & DP_PHY_MODE_STATUS_COMPLETED(tc_port))) {
> > +   DRM_ERROR("DP PHY for TC port %d not ready\n",
> > tc_port);
> > +   return false;
> 
> This is going to be hit as soon as someone manages to plug&unplug the
> cable rapidly enough, The callers all handle the bool return so why
> proclaim error on their behalf?

This error message is not supposed to happen since the spec says we
only get the interrupt after the PHY is actually ready. So my plan was
to have a way to find out in case the spec is wrong, which sometimes
happen.

OTOH there's actually nothing we can do here, and the callers will
indeed handle the return. I'll change it to DRM_DEBUG_KMS.

Thanks,
Paulo

> -Chris
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH] drm/i915/icl: implement the tc/legacy HPD {dis, }connect flows

2018-08-01 Thread Chris Wilson
Quoting Paulo Zanoni (2018-08-01 00:45:04)
> +static bool icl_tc_phy_connect(struct drm_i915_private *dev_priv,
> +  struct intel_digital_port *dig_port)
> +{
> +   enum tc_port tc_port = intel_port_to_tc(dev_priv, 
> dig_port->base.port);
> +   u32 val;
> +
> +   if (dig_port->tc_type != TC_PORT_LEGACY &&
> +   dig_port->tc_type != TC_PORT_TYPEC)
> +   return true;
> +
> +   val = I915_READ(PORT_TX_DFLEXDPPMS);
> +   if (!(val & DP_PHY_MODE_STATUS_COMPLETED(tc_port))) {
> +   DRM_ERROR("DP PHY for TC port %d not ready\n", tc_port);
> +   return false;

This is going to be hit as soon as someone manages to plug&unplug the
cable rapidly enough, The callers all handle the bool return so why
proclaim error on their behalf?
-Chris
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx