From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH] drm: edid: add support for E-DDC Date: Wed, 22 Aug 2012 10:52:26 +0300 Message-ID: <20120822075226.GD4421@intel.com> References: <1345533048-8898-1-git-send-email-s.shirish@samsung.com> <1345533048-8898-2-git-send-email-s.shirish@samsung.com> <20120821112602.GB4421@intel.com> <20120821145614.GC4421@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 105839EB26 for ; Wed, 22 Aug 2012 00:52:36 -0700 (PDT) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: Shirish S Cc: Jean Delvare , Shirish S , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org On Tue, Aug 21, 2012 at 04:28:20PM -0700, Shirish S wrote: > On Tue, Aug 21, 2012 at 7:56 AM, Ville Syrj=E4l=E4 < > ville.syrjala@linux.intel.com> wrote: > = > > On Tue, Aug 21, 2012 at 06:55:53AM -0700, Shirish S wrote: > Here are my earlier comments on Jean's patch: > > http://lists.freedesktop.org/archives/dri-devel/2012-February/019069.ht= ml > > > > > If i am not wrong am doing exactly what you have said in you comments. > = > This seems a bit wrong to me. The spec says that the ack for the > segment address is "don't care", but for the segment pointer the ack is > required (when segment !=3D 0). > The variable segFlags is "dont care for block 0 and 1 wheras". > = > With I2C_M_IGNORE_NAK we would in fact end up reading segment 0 from a > non E-DDC display, if we try to read segment !=3D 0 from it. Of course > we shouldn't do that unless the display lied to us about what extension > blocks it provides. > = > So I'm not sure if it would be better to trust that the display never > lies about the extension blocks, or if we should just assume all E-DDC > displays ack both segment addr and pointer. The no-ack feature seems > to there for backwards compatibility, for cases where the host always > sends the segment addr/pointer even when reading segment 0 (which your > code doesn't do). > = > To handle it exactly as the spec says, I2C_M_IGNORE_NAK should be split > into two flags (one for addr, other for data). > = > Hence i have split the i2c_msg into 3, segment pointer,offset(addr) > and data pointer. I was referring to the addr and data phases of the segment pointer. According to the spec the ack for the addr is always optional. But I suppose no sane device would nak the addr, while acking the data. -- = Ville Syrj=E4l=E4 Intel OTC