Re: [U-Boot] [PATCH] designware_i2c: disable i2c controller during target address setup
Hi Alexey, On Thu, 7 Nov 2013 17:32:19 +, Alexey Brodkin alexey.brod...@synopsys.com wrote: On Thu, 2013-11-07 at 18:24 +0100, Albert ARIBAUD wrote: Hi Alexey, On Thu, 7 Nov 2013 17:52:18 +0400, Alexey Brodkin alexey.brod...@synopsys.com wrote: /me wonders what made this patch Cc: me. Is it ARM-related in some way? Amicalement, Hi Albert, I noticed that you were a committer of 496ba48f5ec60187d9ff7e4298e3d37677d74530 i2c: designware_i2c.c: Add support for the i2c probe command. So I concluded that you might be interested in this driver and thus may want to be in the loop. Thanks, that explains it -- although I don't remember why this one went through me, but then, that is /my/ problem. :) -Alexey Amicalement, -- Albert. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] designware_i2c: disable i2c controller during target address setup
As it is stated in DesignWare I2C databook: writes to IC_TAR (0x4) register succeed only when IC_ENABLE[0] is set to 0. Signed-off-by: Alexey Brodkin abrod...@synopsys.com Cc: Tom Rini tr...@ti.com cc: Armando Visconti armando.visco...@st.com Cc: Stefan Roese s...@denx.de Cc: Albert ARIBAUD albert.u.b...@aribaud.net Cc: Heiko Schocher h...@denx.de Cc: Vipin KUMAR vipin.ku...@st.com Cc: Tom Rix tom@windriver.com Cc: Mischa Jonker mjon...@synopsys.com --- drivers/i2c/designware_i2c.c | 12 1 file changed, 12 insertions(+) diff --git a/drivers/i2c/designware_i2c.c b/drivers/i2c/designware_i2c.c index c2f0662..c5c6015 100644 --- a/drivers/i2c/designware_i2c.c +++ b/drivers/i2c/designware_i2c.c @@ -151,7 +151,19 @@ void i2c_init(int speed, int slaveadd) */ static void i2c_setaddress(unsigned int i2c_addr) { + unsigned int enbl; + + /* Disable i2c */ + enbl = readl(i2c_regs_p-ic_enable); + enbl = ~IC_ENABLE_0B; + writel(enbl, i2c_regs_p-ic_enable); + writel(i2c_addr, i2c_regs_p-ic_tar); + + /* Enable i2c */ + enbl = readl(i2c_regs_p-ic_enable); + enbl |= IC_ENABLE_0B; + writel(enbl, i2c_regs_p-ic_enable); } /* -- 1.8.4.2 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] designware_i2c: disable i2c controller during target address setup
Hi Alexey, On Thu, 7 Nov 2013 17:52:18 +0400, Alexey Brodkin alexey.brod...@synopsys.com wrote: As it is stated in DesignWare I2C databook: writes to IC_TAR (0x4) register succeed only when IC_ENABLE[0] is set to 0. Signed-off-by: Alexey Brodkin abrod...@synopsys.com Cc: Tom Rini tr...@ti.com cc: Armando Visconti armando.visco...@st.com Cc: Stefan Roese s...@denx.de Cc: Albert ARIBAUD albert.u.b...@aribaud.net Cc: Heiko Schocher h...@denx.de Cc: Vipin KUMAR vipin.ku...@st.com Cc: Tom Rix tom@windriver.com Cc: Mischa Jonker mjon...@synopsys.com --- /me wonders what made this patch Cc: me. Is it ARM-related in some way? Amicalement, -- Albert. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot