Re: [PATCH][RFC] OMAP4: I2C : I2C context save

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Monday 20 June 2011 09:05 PM, Kevin Hilman wrote:
shubhrajyoti@xxxxxx writes:

From: Shubhrajyoti D<shubhrajyoti@xxxxxx>

Currently the OMAP4 doesnot hit device off still the
driver may have support for it.Adding support for the
same.

Signed-off-by: Shubhrajyoti D<shubhrajyoti@xxxxxx>
Please Cc linux-omap as this change to the hwmod data would go through
Tony.
Yes , missed out.
Also, please describe why this hwmod data change affects the problem
described in the changelog.

After Andy's patch set
<code snippet>
static void omap_i2c_unidle(struct omap_i2c_dev *dev)
{
<snip>

        pm_runtime_get_sync(&pdev->dev);

        if (pdata->flags & OMAP_I2C_FLAG_RESET_REGS_POSTIDLE) {
                omap_i2c_write_reg(dev, OMAP_I2C_CON_REG, 0);
                omap_i2c_write_reg(dev, OMAP_I2C_PSC_REG, dev->pscstate);
                omap_i2c_write_reg(dev, OMAP_I2C_SCLL_REG, dev->scllstate);
                omap_i2c_write_reg(dev, OMAP_I2C_SCLH_REG, dev->sclhstate);
                omap_i2c_write_reg(dev, OMAP_I2C_BUF_REG, dev->bufstate);
                omap_i2c_write_reg(dev, OMAP_I2C_SYSC_REG, dev->syscstate);
                omap_i2c_write_reg(dev, OMAP_I2C_WE_REG, dev->westate);
                omap_i2c_write_reg(dev, OMAP_I2C_CON_REG, OMAP_I2C_CON_EN);
        }
        dev->idle = 0;

This is dependent on the flag, I am making it true for OMAP4 also.

Kevin

---
Applies on top of patches from Andy Green
http://www.spinics.net/lists/linux-i2c/msg05632.html

  arch/arm/mach-omap2/omap_hwmod_44xx_data.c |    3 ++-
  1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
index 0fe9556..5e2c748 100644
--- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
@@ -2130,7 +2130,8 @@ static struct omap_hwmod_class omap44xx_i2c_hwmod_class = {
  };

  static struct omap_i2c_dev_attr i2c_dev_attr = {
-	.flags  = OMAP_I2C_FLAG_BUS_SHIFT_NONE,
+	.flags  = OMAP_I2C_FLAG_BUS_SHIFT_NONE |
+			OMAP_I2C_FLAG_RESET_REGS_POSTIDLE,
  };

  /* i2c1 */

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux