<feed xmlns='http://www.w3.org/2005/Atom'>
<title>u-boot.git/drivers/i2c, branch v2014.07</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>board: gdsys: Make gdsys osd hardware detection more robust</title>
<updated>2014-07-07T23:47:19+00:00</updated>
<author>
<name>Dirk Eibach</name>
<email>dirk.eibach@gdsys.cc</email>
</author>
<published>2014-07-03T07:28:22+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=3a990bfaeaf3d8388e1a62163e9361fe89ae3c79'/>
<id>3a990bfaeaf3d8388e1a62163e9361fe89ae3c79</id>
<content type='text'>
Signed-off-by: Dirk Eibach &lt;dirk.eibach@gdsys.cc&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Dirk Eibach &lt;dirk.eibach@gdsys.cc&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c: IHS I2C master driver</title>
<updated>2014-07-07T23:47:18+00:00</updated>
<author>
<name>Dirk Eibach</name>
<email>dirk.eibach@gdsys.cc</email>
</author>
<published>2014-07-03T07:28:18+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=b46226bdb5a1690756daf77c42bdec91194927b0'/>
<id>b46226bdb5a1690756daf77c42bdec91194927b0</id>
<content type='text'>
IHS I2C master support was merely a hack in the osd driver.
Now it is a proper u-boot I2C framework driver, supporting the
v2.00 master features.

Signed-off-by: Dirk Eibach &lt;dirk.eibach@gdsys.cc&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
IHS I2C master support was merely a hack in the osd driver.
Now it is a proper u-boot I2C framework driver, supporting the
v2.00 master features.

Signed-off-by: Dirk Eibach &lt;dirk.eibach@gdsys.cc&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'master' of git://git.denx.de/u-boot-i2c</title>
<updated>2014-07-07T14:10:52+00:00</updated>
<author>
<name>Tom Rini</name>
<email>trini@ti.com</email>
</author>
<published>2014-07-07T14:10:52+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=6ee3d00d1d9d9977e975bd72c3668ee4f210a99d'/>
<id>6ee3d00d1d9d9977e975bd72c3668ee4f210a99d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ARMv8/FSL_LSCH3: Add FSL_LSCH3 SoC</title>
<updated>2014-07-03T06:40:51+00:00</updated>
<author>
<name>York Sun</name>
<email>yorksun@freescale.com</email>
</author>
<published>2014-06-23T22:15:54+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=2f78eae5064728d6cd907148cfeaf8ba3e63b0ef'/>
<id>2f78eae5064728d6cd907148cfeaf8ba3e63b0ef</id>
<content type='text'>
Freescale LayerScape with Chassis Generation 3 is a set of SoCs with
ARMv8 cores and 3rd generation of Chassis. We use different MMU setup
to support memory map and cache attribute for these SoCs. MMU and cache
are enabled very early to bootst performance, especially for early
development on emulators. After u-boot relocates to DDR, a new MMU
table with QBMan cache access is created in DDR. SMMU pagesize is set
in SMMU_sACR register. Both DDR3 and DDR4 are supported.

Signed-off-by: York Sun &lt;yorksun@freescale.com&gt;
Signed-off-by: Varun Sethi &lt;Varun.Sethi@freescale.com&gt;
Signed-off-by: Arnab Basu &lt;arnab.basu@freescale.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Freescale LayerScape with Chassis Generation 3 is a set of SoCs with
ARMv8 cores and 3rd generation of Chassis. We use different MMU setup
to support memory map and cache attribute for these SoCs. MMU and cache
are enabled very early to bootst performance, especially for early
development on emulators. After u-boot relocates to DDR, a new MMU
table with QBMan cache access is created in DDR. SMMU pagesize is set
in SMMU_sACR register. Both DDR3 and DDR4 are supported.

Signed-off-by: York Sun &lt;yorksun@freescale.com&gt;
Signed-off-by: Varun Sethi &lt;Varun.Sethi@freescale.com&gt;
Signed-off-by: Arnab Basu &lt;arnab.basu@freescale.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c: tegra: dump alen in debug statements</title>
<updated>2014-07-03T04:29:39+00:00</updated>
<author>
<name>Stephen Warren</name>
<email>swarren@nvidia.com</email>
</author>
<published>2014-06-25T16:57:29+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=ad3091ad03e39f88c0bcc566c7a691c4475e2c40'/>
<id>ad3091ad03e39f88c0bcc566c7a691c4475e2c40</id>
<content type='text'>
Since tegra_i2c_{read,write}'s debug() call dumps the chip address, dump
the address length (alen) too, so the address value can be correctly
interpreted.

Signed-off-by: Stephen Warren &lt;swarren@nvidia.com&gt;
Reviewed-by: Yen Lin &lt;yelin@nvidia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Since tegra_i2c_{read,write}'s debug() call dumps the chip address, dump
the address length (alen) too, so the address value can be correctly
interpreted.

Signed-off-by: Stephen Warren &lt;swarren@nvidia.com&gt;
Reviewed-by: Yen Lin &lt;yelin@nvidia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c: tegra: write clean data to TX FIFO</title>
<updated>2014-07-03T04:29:31+00:00</updated>
<author>
<name>Stephen Warren</name>
<email>swarren@nvidia.com</email>
</author>
<published>2014-06-25T16:57:28+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=981b14f01ae79f85eae3dc6873456abd08de2d86'/>
<id>981b14f01ae79f85eae3dc6873456abd08de2d86</id>
<content type='text'>
The Tegra I2C controller's TX FIFO contains 32-bit words. If the final
FIFO entry of a transaction contains fewer than 4 bytes, the driver
currently fills the unused FIFO bytes with uninitialized data. This can
be confusing when reading back the FIFO content for debugging purposes.

Solve this by explicitly initializing the variable containing FIFO data
before filling it (partially) with data. With this change,
send_recv_packets()'s loop's if (is_write) code mirrors the else (i.e.
read) branch.

Signed-off-by: Stephen Warren &lt;swarren@nvidia.com&gt;
Reviewed-by: Yen Lin &lt;yelin@nvidia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The Tegra I2C controller's TX FIFO contains 32-bit words. If the final
FIFO entry of a transaction contains fewer than 4 bytes, the driver
currently fills the unused FIFO bytes with uninitialized data. This can
be confusing when reading back the FIFO content for debugging purposes.

Solve this by explicitly initializing the variable containing FIFO data
before filling it (partially) with data. With this change,
send_recv_packets()'s loop's if (is_write) code mirrors the else (i.e.
read) branch.

Signed-off-by: Stephen Warren &lt;swarren@nvidia.com&gt;
Reviewed-by: Yen Lin &lt;yelin@nvidia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c: tegra: use repeated start for reads</title>
<updated>2014-07-03T04:29:19+00:00</updated>
<author>
<name>Stephen Warren</name>
<email>swarren@nvidia.com</email>
</author>
<published>2014-06-25T16:57:27+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=68049a082b8aedf09e769e61885e000e598bb516'/>
<id>68049a082b8aedf09e769e61885e000e598bb516</id>
<content type='text'>
I2C read transactions are typically implemented as follows:

START(write) address REPEATED_START(read) data... STOP

However, Tegra's I2C driver currently implements reads as follows:

START(write) address STOP START(read) data... STOP

This sequence confuses at least the AS3722 PMIC on the Jetson TK1 board,
leading to corrupted read data in some cases. Fix the driver to chain
the transactions together using repeated starts to solve this.

Signed-off-by: Stephen Warren &lt;swarren@nvidia.com&gt;
Reviewed-by: Yen Lin &lt;yelin@nvidia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
I2C read transactions are typically implemented as follows:

START(write) address REPEATED_START(read) data... STOP

However, Tegra's I2C driver currently implements reads as follows:

START(write) address STOP START(read) data... STOP

This sequence confuses at least the AS3722 PMIC on the Jetson TK1 board,
leading to corrupted read data in some cases. Fix the driver to chain
the transactions together using repeated starts to solve this.

Signed-off-by: Stephen Warren &lt;swarren@nvidia.com&gt;
Reviewed-by: Yen Lin &lt;yelin@nvidia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c: kona: Resolve Kona I2C driver issue</title>
<updated>2014-06-12T09:42:50+00:00</updated>
<author>
<name>Steve Rae</name>
<email>srae@broadcom.com</email>
</author>
<published>2014-05-26T19:33:29+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=6736ec15c518d013263fa97fc48ca22a50753792'/>
<id>6736ec15c518d013263fa97fc48ca22a50753792</id>
<content type='text'>
- "i2c mw" command hangs (with some compilers)

Signed-off-by: Steve Rae &lt;srae@broadcom.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- "i2c mw" command hangs (with some compilers)

Signed-off-by: Steve Rae &lt;srae@broadcom.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mvtwsi: Remove unnecessary twsi_baud_rate and twsi_slave_address globals</title>
<updated>2014-05-14T10:59:12+00:00</updated>
<author>
<name>Hans de Goede</name>
<email>hdegoede@redhat.com</email>
</author>
<published>2014-05-03T15:46:27+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=2072e7262965bb48d7fffb1e283101e6ed8b21a8'/>
<id>2072e7262965bb48d7fffb1e283101e6ed8b21a8</id>
<content type='text'>
These are used only once, so their is no need to have them global.

This also stops mvtwsi from using any bss vars making it easier to use
before dram init (to talk to the pmic to set the dram voltage).

Signed-off-by: Hans de Goede &lt;hdegoede@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
These are used only once, so their is no need to have them global.

This also stops mvtwsi from using any bss vars making it easier to use
before dram init (to talk to the pmic to set the dram voltage).

Signed-off-by: Hans de Goede &lt;hdegoede@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mvtwsi: Fix clock programming</title>
<updated>2014-05-14T10:58:55+00:00</updated>
<author>
<name>Hans de Goede</name>
<email>hdegoede@redhat.com</email>
</author>
<published>2014-05-03T15:46:26+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=fab356a0b87d57d474d6e87408f1ede98a503150'/>
<id>fab356a0b87d57d474d6e87408f1ede98a503150</id>
<content type='text'>
The TWSI_FREQUENCY macro was wrong in 2 ways:
1) It was casting the result of the calculations to an u8, while i2c clk
rates are often &gt;= 100Khz which won't fit in a u8, drop the cast.
2) It had an extra factor of 2 in the divider which neither the datasheet nor
the Linux driver have.

The comment for the default value was wrongly saying that m lives in
bits 4-7, while in reality it is in bits 3-6, as can be seen from the correct
shift by 3 used in i2c_init().

While at it remove the unused twsi_actual_speed variable.

Signed-off-by: Hans de Goede &lt;hdegoede@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The TWSI_FREQUENCY macro was wrong in 2 ways:
1) It was casting the result of the calculations to an u8, while i2c clk
rates are often &gt;= 100Khz which won't fit in a u8, drop the cast.
2) It had an extra factor of 2 in the divider which neither the datasheet nor
the Linux driver have.

The comment for the default value was wrongly saying that m lives in
bits 4-7, while in reality it is in bits 3-6, as can be seen from the correct
shift by 3 used in i2c_init().

While at it remove the unused twsi_actual_speed variable.

Signed-off-by: Hans de Goede &lt;hdegoede@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
