Hello Ville,<br><br><div class="gmail_quote">On Wed, Aug 22, 2012 at 12:52 AM, Ville Syrjälä <span dir="ltr"><<a href="mailto:ville.syrjala@linux.intel.com" target="_blank">ville.syrjala@linux.intel.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Tue, Aug 21, 2012 at 04:28:20PM -0700, Shirish S wrote:<br>
> On Tue, Aug 21, 2012 at 7:56 AM, Ville Syrjälä <<br>
> <a href="mailto:ville.syrjala@linux.intel.com">ville.syrjala@linux.intel.com</a>> wrote:<br>
><br>
> > On Tue, Aug 21, 2012 at 06:55:53AM -0700, Shirish S wrote:<br>
</div><div class="im">> Here are my earlier comments on Jean's patch:<br>
> > <a href="http://lists.freedesktop.org/archives/dri-devel/2012-February/019069.html" target="_blank">http://lists.freedesktop.org/archives/dri-devel/2012-February/019069.html</a><br>
> ><br>
> ><br>
> If i am not wrong am doing exactly what you have said in you comments.<br>
><br>
> This seems a bit wrong to me. The spec says that the ack for the<br>
> segment address is "don't care", but for the segment pointer the ack is<br>
> required (when segment != 0).<br>
> The variable segFlags is "dont care for block 0 and 1 wheras".<br>
><br>
> With I2C_M_IGNORE_NAK we would in fact end up reading segment 0 from a<br>
> non E-DDC display, if we try to read segment != 0 from it. Of course<br>
> we shouldn't do that unless the display lied to us about what extension<br>
> blocks it provides.<br>
><br>
> So I'm not sure if it would be better to trust that the display never<br>
> lies about the extension blocks, or if we should just assume all E-DDC<br>
> displays ack both segment addr and pointer. The no-ack feature seems<br>
> to there for backwards compatibility, for cases where the host always<br>
> sends the segment addr/pointer even when reading segment 0 (which your<br>
> code doesn't do).<br>
><br>
> To handle it exactly as the spec says, I2C_M_IGNORE_NAK should be split<br>
> into two flags (one for addr, other for data).<br>
><br>
> Hence i have split the i2c_msg into 3, segment pointer,offset(addr)<br>
> and data pointer.<br>
<br>
</div>I was referring to the addr and data phases of the segment pointer.<br>
According to the spec the ack for the addr is always optional. But I<br>
suppose no sane device would nak the addr, while acking the data.<br>
<div class="HOEnZb"><div class="h5"><br></div></div></blockquote><div>Thanks for your comment, actually there was a mistake in my code,</div><div>i have posted the second set.</div><div>Kindly have a look. </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5">
--<br>
Ville Syrjälä<br>
Intel OTC<br>
</div></div></blockquote></div>Regards,<div>Shirish S</div>