<feed xmlns='http://www.w3.org/2005/Atom'>
<title>u-boot.git/drivers/i2c, branch v2014.04</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/'/>
<entry>
<title>i2c: sh_i2c: bugfix: i2c probe command does not work</title>
<updated>2014-04-14T08:41:48+00:00</updated>
<author>
<name>Tetsuyuki Kobayashi</name>
<email>koba@kmckk.co.jp</email>
</author>
<published>2014-04-14T08:13:57+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=7a657689038982affa505b8ad402f17c8fdf10b3'/>
<id>7a657689038982affa505b8ad402f17c8fdf10b3</id>
<content type='text'>
This is regression of commit 2035d77d i2c: sh_i2c: Update to new CONFIG_SYS_I2C framework

Before commit 2035d77d, i2c probe command works properly on kzm9g board.

KZM-A9-GT# i2c probe
Valid chip addresses: 0C 12 1D 32 39 3D 40 60

After commit 2035d77d, i2c probe command does not work.

KZM-A9-GT# i2c probe
Valid chip addresses: 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F

sh_i2c_probe() calls sh_i2c_read(), but read length is 0. So acutally it does not read device at all. This patch prepares dummy buffer and read data into it.

Signed-off-by: Tetsuyuki Kobayashi &lt;koba@kmckk.co.jp&gt;
Acked-by: Heiko Schocher &lt;hs@denx.de&gt;
Signed-off-by: Nobuhiro Iwamatsu &lt;iwamatsu@nigauri.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is regression of commit 2035d77d i2c: sh_i2c: Update to new CONFIG_SYS_I2C framework

Before commit 2035d77d, i2c probe command works properly on kzm9g board.

KZM-A9-GT# i2c probe
Valid chip addresses: 0C 12 1D 32 39 3D 40 60

After commit 2035d77d, i2c probe command does not work.

KZM-A9-GT# i2c probe
Valid chip addresses: 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F

sh_i2c_probe() calls sh_i2c_read(), but read length is 0. So acutally it does not read device at all. This patch prepares dummy buffer and read data into it.

Signed-off-by: Tetsuyuki Kobayashi &lt;koba@kmckk.co.jp&gt;
Acked-by: Heiko Schocher &lt;hs@denx.de&gt;
Signed-off-by: Nobuhiro Iwamatsu &lt;iwamatsu@nigauri.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers: i2c: delete an unused source file</title>
<updated>2014-03-31T05:30:55+00:00</updated>
<author>
<name>Masahiro Yamada</name>
<email>yamada.m@jp.panasonic.com</email>
</author>
<published>2014-03-31T04:03:30+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=462d1883f78353c5ed9d09de45a9b5b2422793a3'/>
<id>462d1883f78353c5ed9d09de45a9b5b2422793a3</id>
<content type='text'>
Signed-off-by: Masahiro Yamada &lt;yamada.m@jp.panasonic.com&gt;
Cc: Heiko Schocher &lt;hs@denx.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Masahiro Yamada &lt;yamada.m@jp.panasonic.com&gt;
Cc: Heiko Schocher &lt;hs@denx.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'master' of git://git.denx.de/u-boot-arm</title>
<updated>2014-02-26T21:49:58+00:00</updated>
<author>
<name>Tom Rini</name>
<email>trini@ti.com</email>
</author>
<published>2014-02-26T21:49:58+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=eeb72e67619b98d2502fe634a3a5d9953de92ad0'/>
<id>eeb72e67619b98d2502fe634a3a5d9953de92ad0</id>
<content type='text'>
Conflicts:
	arch/arm/cpu/armv7/config.mk
	board/ti/am43xx/mux.c
	include/configs/am43xx_evm.h

Signed-off-by: Tom Rini &lt;trini@ti.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Conflicts:
	arch/arm/cpu/armv7/config.mk
	board/ti/am43xx/mux.c
	include/configs/am43xx_evm.h

Signed-off-by: Tom Rini &lt;trini@ti.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c: kona: Add Kona I2C driver</title>
<updated>2014-02-22T18:30:39+00:00</updated>
<author>
<name>Darwin Rambo</name>
<email>drambo@broadcom.com</email>
</author>
<published>2014-02-11T19:06:36+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=4bded3a367b5f0e4025b6460bf8e5101b2f2faac'/>
<id>4bded3a367b5f0e4025b6460bf8e5101b2f2faac</id>
<content type='text'>
Add support for the Kona I2C controller found on Broadcom mobile SoCs.

Signed-off-by: Darwin Rambo &lt;drambo@broadcom.com&gt;
Reviewed-by: Steve Rae &lt;srae@broadcom.com&gt;
Reviewed-by: Tim Kryger &lt;tkryger@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add support for the Kona I2C controller found on Broadcom mobile SoCs.

Signed-off-by: Darwin Rambo &lt;drambo@broadcom.com&gt;
Reviewed-by: Steve Rae &lt;srae@broadcom.com&gt;
Reviewed-by: Tim Kryger &lt;tkryger@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'master' of git://git.denx.de/u-boot-arm</title>
<updated>2014-02-20T17:18:59+00:00</updated>
<author>
<name>Tom Rini</name>
<email>trini@ti.com</email>
</author>
<published>2014-02-20T17:18:59+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=6853e6aa77b388998a5368b400aee3ae7776b1c2'/>
<id>6853e6aa77b388998a5368b400aee3ae7776b1c2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>designware_i2c: remove inclusion of &lt;asm/arch/hardware.h&gt;</title>
<updated>2014-02-20T05:49:09+00:00</updated>
<author>
<name>Alexey Brodkin</name>
<email>Alexey.Brodkin@synopsys.com</email>
</author>
<published>2014-02-10T08:20:12+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=3d93f6959b0e91a8ee6845363e18b2d4375a0a53'/>
<id>3d93f6959b0e91a8ee6845363e18b2d4375a0a53</id>
<content type='text'>
As soon as all boards have their CONFIG_SYS_I2C_BASE defined in
configuration files instead of "asm/arch/hardware.h" it's safe to remove
the inclusion in question and make driver platform-independent.

Cc: Tom Rini &lt;trini@ti.com&gt;
Cc: Heiko Schocher &lt;hs@denx.de&gt;
Cc: Stefan Roese &lt;sr@denx.de&gt;
Cc: Vipin Kumar &lt;vipin.kumar@st.com&gt;
Cc: Armando Visconti &lt;armando.visconti@st.com&gt;

Signed-off-by: Alexey Brodkin &lt;abrodkin@synopsys.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As soon as all boards have their CONFIG_SYS_I2C_BASE defined in
configuration files instead of "asm/arch/hardware.h" it's safe to remove
the inclusion in question and make driver platform-independent.

Cc: Tom Rini &lt;trini@ti.com&gt;
Cc: Heiko Schocher &lt;hs@denx.de&gt;
Cc: Stefan Roese &lt;sr@denx.de&gt;
Cc: Vipin Kumar &lt;vipin.kumar@st.com&gt;
Cc: Armando Visconti &lt;armando.visconti@st.com&gt;

Signed-off-by: Alexey Brodkin &lt;abrodkin@synopsys.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>OMAP24xx I2C: Add support for set-speed</title>
<updated>2014-02-20T05:48:23+00:00</updated>
<author>
<name>Hannes Petermaier</name>
<email>oe5hpm@oevsv.at</email>
</author>
<published>2014-02-03T20:22:18+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=d5243359e1afc957acd373dbbde1cf6c70ee5485'/>
<id>d5243359e1afc957acd373dbbde1cf6c70ee5485</id>
<content type='text'>
Adds support for set-speed on the OMAP24xx I2C Adapter.

Changes to omap24_i2c_write(...) for polling ARDY Bit from IRQ-Status.
Otherwise on a subsequent call the transfer of last byte from the
predecessor is aborted and therefore lost. For exmaple when
i2c_write(...) is followed by a i2c_setspeed(...) (which has to
deactivate and activate master for changing psc,...).

Minor cosmetical changes.

Signed-off-by: Hannes Petermaier &lt;oe5hpm@oevsv.at&gt;
Cc: Heiko Schocher &lt;hs@denx.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Adds support for set-speed on the OMAP24xx I2C Adapter.

Changes to omap24_i2c_write(...) for polling ARDY Bit from IRQ-Status.
Otherwise on a subsequent call the transfer of last byte from the
predecessor is aborted and therefore lost. For exmaple when
i2c_write(...) is followed by a i2c_setspeed(...) (which has to
deactivate and activate master for changing psc,...).

Minor cosmetical changes.

Signed-off-by: Hannes Petermaier &lt;oe5hpm@oevsv.at&gt;
Cc: Heiko Schocher &lt;hs@denx.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c: i2c-mxs: Wait for I2C to empty queue</title>
<updated>2014-02-20T05:46:57+00:00</updated>
<author>
<name>Marek Vasut</name>
<email>marex@denx.de</email>
</author>
<published>2014-02-06T01:59:34+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=d22643e7e819a94a32652cfb041c24d4fd99a7ec'/>
<id>d22643e7e819a94a32652cfb041c24d4fd99a7ec</id>
<content type='text'>
Make sure the I2C write queue is empty before leaving the mxs_i2c_write().
If we start and I2C write and only wait for ACK, the MXS I2C IP block may
enter next operation while still processing the write aftermath internally.
This will in turn disrupt one or more subsequent transfer(s).

A testcase for this issue is as such. This testcase is also interesting because
the first I2C_WRITE which becomes disruptive happens in the 'i2c read' command.
The 'i2c read' command first uses I2C_WRITE to send I2C address of the chip and
then uses I2C_READ to read data from the chip. After this command completes, the
'i2c probe' will use sequence of I2C_WRITE commands to probe the I2C bus. The
problem is that the first I2C_WRITE disrupted the I2C IP block operation and
this sideeffect propagates all the way to this next I2C_WRITE used by the 'i2c
probe' call. The result is the 'i2c probe' receives an ACK on I2C address 0x00,
even if this ACK was owned by the previous I2C_WRITE operation. Note that the
'i2c read' command must read from a valid I2C chip address.

Wrong:
&gt; i2c probe
Valid chip addresses: 50 51
&gt; i2c read 0x50 0x0.2 0x10 0x42000000
&gt; i2c probe
Valid chip addresses: 00 50 51

With this patch
&gt; i2c probe
Valid chip addresses: 50 51
&gt; i2c read 0x50 0x0.2 0x10 0x42000000
&gt; i2c probe
Valid chip addresses: 50 51

Signed-off-by: Marek Vasut &lt;marex@denx.de&gt;
Cc: Heiko Schocher &lt;hs@denx.de&gt;
Cc: Fabio Estevam &lt;festevam@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make sure the I2C write queue is empty before leaving the mxs_i2c_write().
If we start and I2C write and only wait for ACK, the MXS I2C IP block may
enter next operation while still processing the write aftermath internally.
This will in turn disrupt one or more subsequent transfer(s).

A testcase for this issue is as such. This testcase is also interesting because
the first I2C_WRITE which becomes disruptive happens in the 'i2c read' command.
The 'i2c read' command first uses I2C_WRITE to send I2C address of the chip and
then uses I2C_READ to read data from the chip. After this command completes, the
'i2c probe' will use sequence of I2C_WRITE commands to probe the I2C bus. The
problem is that the first I2C_WRITE disrupted the I2C IP block operation and
this sideeffect propagates all the way to this next I2C_WRITE used by the 'i2c
probe' call. The result is the 'i2c probe' receives an ACK on I2C address 0x00,
even if this ACK was owned by the previous I2C_WRITE operation. Note that the
'i2c read' command must read from a valid I2C chip address.

Wrong:
&gt; i2c probe
Valid chip addresses: 50 51
&gt; i2c read 0x50 0x0.2 0x10 0x42000000
&gt; i2c probe
Valid chip addresses: 00 50 51

With this patch
&gt; i2c probe
Valid chip addresses: 50 51
&gt; i2c read 0x50 0x0.2 0x10 0x42000000
&gt; i2c probe
Valid chip addresses: 50 51

Signed-off-by: Marek Vasut &lt;marex@denx.de&gt;
Cc: Heiko Schocher &lt;hs@denx.de&gt;
Cc: Fabio Estevam &lt;festevam@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>designware_i2c: Enhance DesignWare I2C driver address support</title>
<updated>2014-02-20T05:46:56+00:00</updated>
<author>
<name>Chin Liang See</name>
<email>clsee@altera.com</email>
</author>
<published>2014-02-04T17:56:23+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=070cbaf821e07531db6e55946932f4172dd72045'/>
<id>070cbaf821e07531db6e55946932f4172dd72045</id>
<content type='text'>
Enhance the DesignWare I2C driver to support address length more
than 1 byte. This enhancement is required as some I2C slave
device such as EEPROM chip might have 16 bit address byte.

Signed-off-by: Chin Liang See &lt;clsee@altera.com&gt;
Acked-by: Alexey Brodkin &lt;Alexey.Brodkin@synopsys.com&gt;
Cc: Tom Rini &lt;trini@ti.com&gt;
cc: Armando Visconti &lt;armando.visconti@st.com&gt;
Cc: Stefan Roese &lt;sr@denx.de&gt;
Cc: Albert ARIBAUD &lt;albert.u.boot@aribaud.net&gt;
Cc: Heiko Schocher &lt;hs@denx.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Enhance the DesignWare I2C driver to support address length more
than 1 byte. This enhancement is required as some I2C slave
device such as EEPROM chip might have 16 bit address byte.

Signed-off-by: Chin Liang See &lt;clsee@altera.com&gt;
Acked-by: Alexey Brodkin &lt;Alexey.Brodkin@synopsys.com&gt;
Cc: Tom Rini &lt;trini@ti.com&gt;
cc: Armando Visconti &lt;armando.visconti@st.com&gt;
Cc: Stefan Roese &lt;sr@denx.de&gt;
Cc: Albert ARIBAUD &lt;albert.u.boot@aribaud.net&gt;
Cc: Heiko Schocher &lt;hs@denx.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>blackfin: make i2c driver blackfin independant</title>
<updated>2014-02-20T05:46:56+00:00</updated>
<author>
<name>Scott Jiang</name>
<email>scott.jiang.linux@gmail.com</email>
</author>
<published>2014-01-28T05:53:36+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=16c550274c2590ea20d32de9480365048e271aad'/>
<id>16c550274c2590ea20d32de9480365048e271aad</id>
<content type='text'>
The ADI twi peripheral is not binding to Blackfin processor only.
Access i2c registers by standard io functions.
Fix coding style.

Signed-off-by: Scott Jiang &lt;scott.jiang.linux@gmail.com&gt;
Signed-off-by: Sonic Zhang &lt;sonic.zhang@analog.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The ADI twi peripheral is not binding to Blackfin processor only.
Access i2c registers by standard io functions.
Fix coding style.

Signed-off-by: Scott Jiang &lt;scott.jiang.linux@gmail.com&gt;
Signed-off-by: Sonic Zhang &lt;sonic.zhang@analog.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
