intel_scu_ipc: fix IPC i2c write bug
authorJianwei Yang <jianwei.yang@intel.com>
Tue, 24 Aug 2010 13:32:38 +0000 (14:32 +0100)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 24 Aug 2010 17:42:09 +0000 (10:42 -0700)
We should pass the data to the data register.

Signed-off-by: Jianwei Yang <jianwei.yang@intel.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/platform/x86/intel_scu_ipc.c

index 943f9084dcb11734e73064332f903320478c3c1e..6abe18e638e976f325ba92c9892bd2cc1501f4a8 100644 (file)
@@ -487,7 +487,7 @@ int intel_scu_ipc_i2c_cntrl(u32 addr, u32 *data)
                mdelay(1);
                *data = readl(ipcdev.i2c_base + I2C_DATA_ADDR);
        } else if (cmd == IPC_I2C_WRITE) {
-               writel(addr, ipcdev.i2c_base + I2C_DATA_ADDR);
+               writel(*data, ipcdev.i2c_base + I2C_DATA_ADDR);
                mdelay(1);
                writel(addr, ipcdev.i2c_base + IPC_I2C_CNTRL_ADDR);
        } else {