Home
last modified time | relevance | path

Searched hist:"68049 a082b8aedf09e769e61885e000e598bb516" (Results 1 – 2 of 2) sorted by relevance

/rk3399_rockchip-uboot/arch/arm/include/asm/arch-tegra/
H A Dtegra_i2c.h68049a082b8aedf09e769e61885e000e598bb516 Wed Jun 25 16:57:27 UTC 2014 Stephen Warren <swarren@nvidia.com> i2c: tegra: use repeated start for reads

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 <swarren@nvidia.com>
Reviewed-by: Yen Lin <yelin@nvidia.com>
/rk3399_rockchip-uboot/drivers/i2c/
H A Dtegra_i2c.c68049a082b8aedf09e769e61885e000e598bb516 Wed Jun 25 16:57:27 UTC 2014 Stephen Warren <swarren@nvidia.com> i2c: tegra: use repeated start for reads

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 <swarren@nvidia.com>
Reviewed-by: Yen Lin <yelin@nvidia.com>