[Intel-gfx] [PATCH 2/4] drm/i915/dp: increase i2c-over-aux retry interval on AUX DEFER

Todd Previte tprevite at gmail.com
Fri Sep 20 22:56:20 CEST 2013


On 09/20/2013 06:42 AM, Jani Nikula wrote:
> There is no clear cut rules or specs for the retry interval, as there
> are many factors that affect overall response time. Increase the
> interval, and even more so on branch devices which may have limited i2c
> bit rates.
>
> Signed-off-by: Jani Nikula <jani.nikula at intel.com>
> ---
>   drivers/gpu/drm/i915/intel_dp.c |   13 ++++++++++++-
>   1 file changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index 6626514..3afbea9 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -678,7 +678,18 @@ intel_dp_i2c_aux_ch(struct i2c_adapter *adapter, int mode,
>   			DRM_DEBUG_KMS("aux_ch native nack\n");
>   			return -EREMOTEIO;
>   		case AUX_NATIVE_REPLY_DEFER:
> -			udelay(100);
> +			/*
> +			 * For now, just give more slack to branch devices. We
> +			 * could check the DPCD for I2C bit rate capabilities,
> +			 * and if available, adjust the interval. We could also
> +			 * be more careful with DP-to-Legacy adapters where a
> +			 * long legacy cable may force very low I2C bit rates.
> +			 */
> +			if (intel_dp->dpcd[DP_DOWNSTREAMPORT_PRESENT] &
> +			    DP_DWN_STRM_PORT_PRESENT)
> +				usleep_range(500, 600);
> +			else
> +				usleep_range(300, 400);
>   			continue;
>   		default:
>   			DRM_ERROR("aux_ch invalid native reply 0x%02x\n",

Those look like reasonable values to me.

[Reviewed-by]: Todd Previte <tprevite at gmail.com 
<mailto:tprevite at gmail.com>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-gfx/attachments/20130920/dc0911a5/attachment.html>


More information about the Intel-gfx mailing list