linux-i2c.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jean Delvare <jdelvare@suse.de>
To: Linux I2C <linux-i2c@vger.kernel.org>
Cc: Seth Heasley <seth.heasley@intel.com>,
	Mika Westerberg <mika.westerberg@linux.intel.com>,
	Jarkko Nikula <jarkko.nikula@linux.intel.com>
Subject: Re: i2c-i801 partially broken on Lynx Point PCH?
Date: Wed, 18 May 2016 15:20:01 +0200	[thread overview]
Message-ID: <20160518152001.3ddb8d11@endymion> (raw)
In-Reply-To: <20160518140508.7dfe192e@endymion>

Me again...

On Wed, 18 May 2016 14:05:08 +0200, Jean Delvare wrote:
> * The I2C Block Read transaction must set this bit to 0 (write) even if
>   it is a read transaction. This is explicitly mentioned in the
>   datasheet (page 215, "For I2C Read command, the value written into
>   bit 0 of the Transmit Slave Address Register (SMB I/O register,
>   offset 04h) needs to be 0.")
> (...)
> Mika/Jarkko, is there any chance to get your hardware people involved?
> I wonder if there is any workaround to this issue? Any chance to get
> this fixed in future chipsets? Not sure about Send Byte but the write
> protection should definitely not block I2C Block Read transactions.
> 
> For now we need to come up with a software workaround. I can think of 3
> approaches:
> (...)
> If anyone can think of any better solution, please let me know.

4* It could be that the sentence in the datasheet that claims the slave
   address register bit 0 must be set to 0 (write) for I2C Block Reads
   is a left-over from previous incarnations of the chipset, and this no
   longer holds true today. Out of curiosity I tried setting bit 0 to 1
   (as it should normally be for a read) and it seems to work just
   fine. And then it is no longer affected by the SPD write protection
   mechanism. However I don't know if there is any problem or negative
   side effect I may have missed.

Mika/Jarkko, can you check with your hardware guys if that statement on
page 215 still holds for 8-Series/C220 and later?

Thanks,
-- 
Jean Delvare
SUSE L3 Support

  parent reply	other threads:[~2016-05-18 13:20 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-11  7:34 i2c-i801 partially broken on Lynx Point PCH? Jean Delvare
2016-05-11  8:43 ` Jean Delvare
2016-05-11 16:15   ` Heasley, Seth
2016-05-11 17:34     ` Jean Delvare
2016-05-11 17:46       ` Heasley, Seth
2016-05-18 12:05   ` Jean Delvare
2016-05-18 13:02     ` Wolfram Sang
2016-05-18 13:20     ` Jean Delvare [this message]
2016-05-19 11:02       ` Jarkko Nikula
2016-05-19 11:29         ` Jean Delvare

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160518152001.3ddb8d11@endymion \
    --to=jdelvare@suse.de \
    --cc=jarkko.nikula@linux.intel.com \
    --cc=linux-i2c@vger.kernel.org \
    --cc=mika.westerberg@linux.intel.com \
    --cc=seth.heasley@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).