lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 25 Sep 2014 19:08:18 -0700
From:	Doug Anderson <>
To:	addy ke <>
Cc:	Wolfram Sang <>,
	Max Schwarz <>,
	Heiko Stübner <>,
	Olof Johansson <>,
	"" <>,
	"" <>,
	<>,, Eddie Cai <>,
	Jianqun Xu <>,
	Tao Huang <>,
	Chris <>,
	姚智情 <>,
	han jiang <>,
	Kever Yang <>,
	Lin Huang <>,
	晓腾王 <>,
	Shunqian Zheng <>
Subject: Re: [PATCH] i2c: rk3x: adjust the LOW divison based on
 characteristics of SCL


On Thu, Sep 25, 2014 at 6:40 PM, addy ke <> wrote:
> Hi, Doug
> On 2014/9/26 5:52, Doug Anderson wrote:
>> Addy,
>> On Wed, Sep 24, 2014 at 9:36 PM, Doug Anderson <> wrote:
>>> Addy,
>>> On Wed, Sep 24, 2014 at 6:56 PM, addy ke <> wrote:
>>>> In my measurement,all paramter but "Data hold time" are match the characteristics of SCL bus line.
>>>> the measured value is 0.928us("data hold time on RK3X"  ~=  "the low period / 2")
>>>> but the maximum value described in table is 0.9us
>>>> About "Data hold time", there are described in I2C specification:
>>>> - for CBUS compatible masters for I2C-bus deivices
>>>> - the maximum data hold time has only be met if the device does not stretch the LOW period of the SCL signal.
>>>> I have tested on RK3288-Pinky board, there are no error.
>>>> But I don't known whether this paramter will affect i2c communications.
>>> I'll have to spend more time tomorrow to really understand this, but
>>> if changing the code to bias towards slightly longer "high" times
>>> instead of "low" times helps fix it then that's fine with me.
>> So what you're saying is that you're seeing a case where the clock
>> goes low and the data is not valid until .928us.  Is this data that is
>> being driven by the master or data that is being driven by the slave?
> It is driven by the master and will be release at half of LOW period in our IC design.

Ah, I didn't know this.  Is that in the TRM somewhere? does it work to just replace:

    ideal_low_div = DIV_ROUND_UP(clk_rate * min_low_ns,
                                 scl_rate * 8 * min_total_ns)


    ideal_low_div = min_low_div

That will assign all "extra" time to the "high" part.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

Powered by blists - more mailing lists