diff options
author | Chaitanya Bandi <bandik@nvidia.com> | 2011-11-25 18:12:37 +0530 |
---|---|---|
committer | Varun Wadekar <vwadekar@nvidia.com> | 2011-12-08 17:05:50 +0530 |
commit | 85eb6549652b7c6eeb2434efca01df7c13a2923c (patch) | |
tree | f9cde0f336330e895d199b05464a76e30a2f864f /drivers/i2c | |
parent | 8486d4780ef5e3fc1429dfd93ea3100300624d09 (diff) |
i2c: tegra: slave: Corrected slave address config routine
Corrected the slave address configuration routine.
Reviewed-on: http://git-master/r/66805
(cherry picked from commit 18e9409c1db3e3880435e4435f30ad5725e54cdb)
Change-Id: Ia6b314e513a8bc33ca7782604c80d6686dfa260f
Signed-off-by: Chaitanya Bandi <bandik@nvidia.com>
Reviewed-on: http://git-master/r/67604
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Diffstat (limited to 'drivers/i2c')
-rw-r--r-- | drivers/i2c/busses/i2c-slave-tegra.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/i2c/busses/i2c-slave-tegra.c b/drivers/i2c/busses/i2c-slave-tegra.c index 1e1e516b6415..f2468d85c1f8 100644 --- a/drivers/i2c/busses/i2c-slave-tegra.c +++ b/drivers/i2c/busses/i2c-slave-tegra.c @@ -316,6 +316,7 @@ static void configure_i2c_slave_address(struct tegra_i2c_slave_dev *i2c_dev) if (i2c_dev->is_ten_bit_addr) { slave_add = i2c_dev->slave_add & 0xFF; slave_add_reg = readl(i2c_dev->base + I2C_SLV_ADDR1); + slave_add_reg &= ~(0xFF); slave_add_reg |= slave_add << I2C_SLV_ADDR1_ADDR_SHIFT; writel(slave_add_reg, i2c_dev->base + I2C_SLV_ADDR1); @@ -328,6 +329,7 @@ static void configure_i2c_slave_address(struct tegra_i2c_slave_dev *i2c_dev) } else { slave_add = (i2c_dev->slave_add & 0x3FF); slave_add_reg = readl(i2c_dev->base + I2C_SLV_ADDR1); + slave_add_reg &= ~(0x3FF); slave_add_reg |= slave_add << I2C_SLV_ADDR1_ADDR_SHIFT; writel(slave_add_reg, i2c_dev->base + I2C_SLV_ADDR1); |