Re: [U-Boot] [PATCH] designware_i2c: disable i2c controller during target address setup

2013-11-08 Thread Albert ARIBAUD
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

2013-11-07 Thread Alexey Brodkin
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

2013-11-07 Thread Albert ARIBAUD
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