|
@@ -72,11 +72,12 @@ enum {
|
|
|
OMAP_I2C_SCLH_REG,
|
|
|
OMAP_I2C_SYSTEST_REG,
|
|
|
OMAP_I2C_BUFSTAT_REG,
|
|
|
- OMAP_I2C_REVNB_LO,
|
|
|
- OMAP_I2C_REVNB_HI,
|
|
|
- OMAP_I2C_IRQSTATUS_RAW,
|
|
|
- OMAP_I2C_IRQENABLE_SET,
|
|
|
- OMAP_I2C_IRQENABLE_CLR,
|
|
|
+ /* only on OMAP4430 */
|
|
|
+ OMAP_I2C_IP_V2_REVNB_LO,
|
|
|
+ OMAP_I2C_IP_V2_REVNB_HI,
|
|
|
+ OMAP_I2C_IP_V2_IRQSTATUS_RAW,
|
|
|
+ OMAP_I2C_IP_V2_IRQENABLE_SET,
|
|
|
+ OMAP_I2C_IP_V2_IRQENABLE_CLR,
|
|
|
};
|
|
|
|
|
|
/* I2C Interrupt Enable Register (OMAP_I2C_IE): */
|
|
@@ -244,11 +245,11 @@ static const u8 omap4_reg_map[] = {
|
|
|
[OMAP_I2C_SCLH_REG] = 0xb8,
|
|
|
[OMAP_I2C_SYSTEST_REG] = 0xbC,
|
|
|
[OMAP_I2C_BUFSTAT_REG] = 0xc0,
|
|
|
- [OMAP_I2C_REVNB_LO] = 0x00,
|
|
|
- [OMAP_I2C_REVNB_HI] = 0x04,
|
|
|
- [OMAP_I2C_IRQSTATUS_RAW] = 0x24,
|
|
|
- [OMAP_I2C_IRQENABLE_SET] = 0x2c,
|
|
|
- [OMAP_I2C_IRQENABLE_CLR] = 0x30,
|
|
|
+ [OMAP_I2C_IP_V2_REVNB_LO] = 0x00,
|
|
|
+ [OMAP_I2C_IP_V2_REVNB_HI] = 0x04,
|
|
|
+ [OMAP_I2C_IP_V2_IRQSTATUS_RAW] = 0x24,
|
|
|
+ [OMAP_I2C_IP_V2_IRQENABLE_SET] = 0x2c,
|
|
|
+ [OMAP_I2C_IP_V2_IRQENABLE_CLR] = 0x30,
|
|
|
};
|
|
|
|
|
|
static inline void omap_i2c_write_reg(struct omap_i2c_dev *i2c_dev,
|
|
@@ -309,7 +310,7 @@ static void omap_i2c_idle(struct omap_i2c_dev *dev)
|
|
|
|
|
|
dev->iestate = omap_i2c_read_reg(dev, OMAP_I2C_IE_REG);
|
|
|
if (dev->rev >= OMAP_I2C_REV_ON_4430)
|
|
|
- omap_i2c_write_reg(dev, OMAP_I2C_IRQENABLE_CLR, 1);
|
|
|
+ omap_i2c_write_reg(dev, OMAP_I2C_IP_V2_IRQENABLE_CLR, 1);
|
|
|
else
|
|
|
omap_i2c_write_reg(dev, OMAP_I2C_IE_REG, 0);
|
|
|
|