]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
i2c-qcom-cci: Fix I2C address bug
authorTodor Tomov <todor.tomov@linaro.org>
Wed, 20 Dec 2017 13:51:47 +0000 (15:51 +0200)
committerThadeu Lima de Souza Cascardo <cascardo@canonical.com>
Wed, 11 Apr 2018 16:43:53 +0000 (13:43 -0300)
BugLink: http://bugs.launchpad.net/bugs/1763040
Do not shift I2C address. CCI now expects to receive correct 7bit I2C address.

Signed-off-by: Todor Tomov <todor.tomov@linaro.org>
(cherry picked from commit c23e053a07768786a726ff175940987c14eac5cd
http://git.linaro.org/landing-teams/working/qualcomm/kernel.git release/qcomlt-4.14)
Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Acked-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
drivers/i2c/busses/i2c-qcom-cci.c

index 7c13a83347dbd561c29f4b624af5da1eaa951d7a..6f80d9efc2e3a7a954529e64ccfe798285817339 100644 (file)
@@ -479,7 +479,7 @@ static int cci_i2c_read(struct cci *cci, u16 addr, u8 *buf, u16 len)
        if (ret < 0)
                return ret;
 
-       val = CCI_I2C_SET_PARAM | ((addr >> 1) & 0x7f) << 4;
+       val = CCI_I2C_SET_PARAM | (addr & 0x7f) << 4;
        writel(val, cci->base + CCI_I2C_Mm_Qn_LOAD_DATA(master, queue));
 
        val = CCI_I2C_READ | len << 4;
@@ -531,7 +531,7 @@ static int cci_i2c_write(struct cci *cci, u16 addr, u8 *buf, u16 len)
        if (ret < 0)
                return ret;
 
-       val = CCI_I2C_SET_PARAM | ((addr >> 1) & 0x7f) << 4;
+       val = CCI_I2C_SET_PARAM | (addr & 0x7f) << 4;
        writel(val, cci->base + CCI_I2C_Mm_Qn_LOAD_DATA(master, queue));
 
        i = 0;