From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Date: Sat, 5 May 2012 15:05:19 +0200 Subject: [U-Boot] [PATCH 3/3] mxc_i2c: remove setting speed at each start In-Reply-To: <4FA45DAD.8090700@boundarydevices.com> References: <1335324807-16177-1-git-send-email-troy.kisky@boundarydevices.com> <1335324807-16177-3-git-send-email-troy.kisky@boundarydevices.com> <4FA45DAD.8090700@boundarydevices.com> Message-ID: <201205051505.20242.marek.vasut@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Dear Troy Kisky, > On 4/24/2012 8:33 PM, Troy Kisky wrote: > > Other then being very weird, this code was also wrong. > > For example, say I set speed to 100K. I'll read back the speed > > as 85937. But the speed is really 85937.5, so we I reset > > the speed to 85937, I'll get 73660.7. After a couple of transactions > > my speed is now exactly 68750 so it will remain there. > > > > Signed-off-by: Troy Kisky > > --- > > > > drivers/i2c/mxc_i2c.c | 6 ------ > > 1 files changed, 0 insertions(+), 6 deletions(-) > > > > diff --git a/drivers/i2c/mxc_i2c.c b/drivers/i2c/mxc_i2c.c > > index 416ffee..fc68062 100644 > > --- a/drivers/i2c/mxc_i2c.c > > +++ b/drivers/i2c/mxc_i2c.c > > @@ -231,12 +231,6 @@ int i2c_imx_start(void) > > > > struct mxc_i2c_regs *i2c_regs = (struct mxc_i2c_regs *)I2C_BASE; > > unsigned int temp = 0; > > int result; > > > > - int speed = i2c_get_bus_speed(); > > - u8 clk_idx = i2c_imx_get_clk(speed); > > - u8 idx = i2c_clk_div[clk_idx][1]; > > - > > - /* Store divider value */ > > - writeb(idx,&i2c_regs->ifdr); > > > > /* Enable I2C controller */ > > writeb(0,&i2c_regs->i2sr); > > Marek would you care to ack/nak this? It is deleting code that you added. Lemme check > > Thanks > Troy Best regards, Marek Vasut