From mboxrd@z Thu Jan 1 00:00:00 1970 From: Damien Lespiau Subject: Re: [PATCH] drm/i915: debugfs: Add support for probing DP sink CRC. Date: Fri, 24 Jan 2014 12:40:21 +0000 Message-ID: <20140124124020.GC3514@strange.config> References: <874n4t6670.fsf@intel.com> <1390565132-25100-1-git-send-email-rodrigo.vivi@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 662A4FB7FE for ; Fri, 24 Jan 2014 04:40:24 -0800 (PST) Content-Disposition: inline In-Reply-To: <1390565132-25100-1-git-send-email-rodrigo.vivi@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces@lists.freedesktop.org Errors-To: intel-gfx-bounces@lists.freedesktop.org To: Rodrigo Vivi Cc: Jani Nikula , Daniel Vetter , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org On Fri, Jan 24, 2014 at 10:05:32AM -0200, Rodrigo Vivi wrote: > +int intel_dp_sink_crc(struct intel_dp *intel_dp, u8 *crc) > +{ > + struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp); > + struct drm_device *dev = intel_dig_port->base.base.dev; > + struct intel_crtc *intel_crtc = > + to_intel_crtc(intel_dig_port->base.base.crtc); > + u8 buf[1]; > + > + if (!intel_dp_aux_native_read(intel_dp, DP_TEST_SINK_MISC, buf, 1)) > + return -EAGAIN; > + > + if (!(buf[0] & DP_TEST_CRC_SUPPORTED)) > + return -ENOTTY; > + > + if (!intel_dp_aux_native_write_1(intel_dp, DP_TEST_SINK, > + DP_TEST_SINK_START)) > + return -EAGAIN; > + > + /* Wait 2 vblanks to be sure we will have the correct CRC value */ > + intel_wait_for_vblank(dev, intel_crtc->pipe); > + intel_wait_for_vblank(dev, intel_crtc->pipe); > + > + if (!intel_dp_aux_native_read_retry(intel_dp, DP_TEST_CRC_R_CR, crc, 6)) > + return -EAGAIN; There's still one retry hidden here. -- Damien