Skip to contentSkip to conversation

i2c-omap: Program I2C_WE on OMAP4 to enable i2c wakeup

PATCH New Rajendra Nayak 3 participants 3 messages Mar 4, 2011

Subsystems (4)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 i2c-omap: Program I2C_WE on OMAP4 to enable i2c wakeup

For the I2C module to be wakeup capable, programming I2C_WE register (which was skipped for OMAP4430) is needed even on OMAP4.
This fixes i2c controller timeouts which were seen recently with the static dependency being cleared between MPU and L4PER clockdomains.

---
Patch is based on 2.6.38-rc7 kernel.

 drivers/i2c/busses/i2c-omap.c |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)
drivers/i2c/busses/i2c-omap.c +1 -3
index 829a2a1..58a58c7 100644
@@ -378,9 +378,7 @@ static int omap_i2c_init(struct omap_i2c_dev *dev)
 			 * REVISIT: Some wkup sources might not be needed.
 			 */
 			dev->westate = OMAP_I2C_WE_ALL;
-			if (dev->rev < OMAP_I2C_REV_ON_4430)
-				omap_i2c_write_reg(dev, OMAP_I2C_WE_REG,
-								dev->westate);
+			omap_i2c_write_reg(dev, OMAP_I2C_WE_REG, dev->westate);
 		}
 	}
 	omap_i2c_write_reg(dev, OMAP_I2C_CON_REG, 0);
Signature · 1 line
1.7.0.4
#1 lore raw

PATCH 1/1 i2c-omap: Program I2C_WE on OMAP4 to enable i2c wakeup

Quoted 10 lines · Rajendra Nayak

For the I2C module to be wakeup capable, programming I2C_WE register (which was skipped for OMAP4430) is needed even on OMAP4.
This fixes i2c controller timeouts which were seen recently with the static dependency being cleared between MPU and L4PER clockdomains.

---
Patch is based on 2.6.38-rc7 kernel.

Ben, looks like another fix that should be queued for 2.6.38-rc.

Thanks,

Kevin

Quoted 19 lines
 drivers/i2c/busses/i2c-omap.c |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)
drivers/i2c/busses/i2c-omap.c +1 -3
index 829a2a1..58a58c7 100644
@@ -378,9 +378,7 @@ static int omap_i2c_init(struct omap_i2c_dev *dev)
 			 * REVISIT: Some wkup sources might not be needed.
 			 */
 			dev->westate = OMAP_I2C_WE_ALL;
-			if (dev->rev < OMAP_I2C_REV_ON_4430)
-				omap_i2c_write_reg(dev, OMAP_I2C_WE_REG,
-								dev->westate);
+			omap_i2c_write_reg(dev, OMAP_I2C_WE_REG, dev->westate);
 		}
 	}
 	omap_i2c_write_reg(dev, OMAP_I2C_CON_REG, 0);
#2 lore raw

PATCH 1/1 i2c-omap: Program I2C_WE on OMAP4 to enable i2c wakeup

Quoted 9 lines · Kevin Hilman
Quoted 7 lines · Rajendra Nayak

For the I2C module to be wakeup capable, programming I2C_WE register (which was skipped for OMAP4430) is needed even on OMAP4.
This fixes i2c controller timeouts which were seen recently with the static dependency being cleared between MPU and L4PER clockdomains.

Quoted 7 lines
Quoted 3 lines

---
Patch is based on 2.6.38-rc7 kernel.

Ben, looks like another fix that should be queued for 2.6.38-rc.

I'll put together the couple of fixes I've got and send them to Linus at the end of the weekend.

Signature · 3 lines
Ben Dooks, ben at fluff.org, http://www.fluff.org/ben/

Large Hadron Colada: A large Pina Colada that makes the universe disappear.