[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4FD9DAAC.5000709@nvidia.com>
Date: Thu, 14 Jun 2012 18:05:56 +0530
From: Laxman Dewangan <ldewangan@...dia.com>
To: Stephen Warren <swarren@...dotorg.org>
CC: "khali@...ux-fr.org" <khali@...ux-fr.org>,
"w.sang@...gutronix.de" <w.sang@...gutronix.de>,
"ben-linux@...ff.org" <ben-linux@...ff.org>,
"olof@...om.net" <olof@...om.net>,
"linux-i2c@...r.kernel.org" <linux-i2c@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-tegra@...r.kernel.org" <linux-tegra@...r.kernel.org>
Subject: Re: [PATCH V3 1/4] i2c: tegra: make sure register writes completes
On Wednesday 13 June 2012 09:25 PM, Stephen Warren wrote:
> On 06/13/2012 04:12 AM, Laxman Dewangan wrote:
> @@ -165,6 +165,10 @@ static void i2c_writel(struct tegra_i2c_dev
> *i2c_dev, u32 val,
>> unsigned long reg)
>> {
>> writel(val, i2c_dev->base + tegra_i2c_reg_addr(i2c_dev, reg));
>> +
>> + /* Read back register to make sure that register writes completed */
>> + if (reg != I2C_TX_FIFO)
>> + readl(i2c_dev->base + tegra_i2c_reg_addr(i2c_dev, reg));
> I guess that's fine, but it sure does seem rather heavy-weight. Don't
> you only need to do the readback if you just wrote to the IRQ status or
> mask registers, rather than if you wrote to /any/ register other than
> the FIFO?
That's what my second patch but based on your earlier review comment, I
did for every register.
I think it will not matter much as we dont write all register with every
transaction, only during initialization.
Then for each transfer we write manly on Tx fifo and interrupt
mask/status register and hence not too much overweight.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists