Chaithrika U S <[email protected]> writes: > Add suspend and resume callbacks to DaVinci I2C driver. > This has been tested on DA850/OMAP-L138 EVM. The SoC specific > suspend-to-RAM support patch series [1] is needed to test this feature. > > [1] http://linux.davincidsp.com/pipermail/davinci-linux-open-source/ > 2009-November/016958.html > > Signed-off-by: Chaithrika U S <[email protected]> > --- > drivers/i2c/busses/i2c-davinci.c | 32 ++++++++++++++++++++++++++++++++ > 1 files changed, 32 insertions(+), 0 deletions(-) > > diff --git a/drivers/i2c/busses/i2c-davinci.c > b/drivers/i2c/busses/i2c-davinci.c > index 81c1049..c1c2909 100644 > --- a/drivers/i2c/busses/i2c-davinci.c > +++ b/drivers/i2c/busses/i2c-davinci.c > @@ -622,6 +622,36 @@ static int davinci_i2c_remove(struct platform_device > *pdev) > return 0; > } > > +#ifdef CONFIG_PM > +static int davinci_i2c_suspend(struct platform_device *pdev, pm_message_t > state) > +{ > + struct davinci_i2c_dev *dev = platform_get_drvdata(pdev); > + > + /* put I2C into reset */ > + davinci_i2c_reset_ctrl(dev, 0); > + > + clk_disable(dev->clk); > + > + return 0; > +} > + > +static int davinci_i2c_resume(struct platform_device *pdev) > +{ > + struct davinci_i2c_dev *dev = platform_get_drvdata(pdev); > + > + clk_enable(dev->clk); > + > + /* take I2C out of reset */ > + davinci_i2c_reset_ctrl(dev, 1); > + > + return 0; > +} > + > +#else > +#define davinci_i2c_suspend NULL > +#define davinci_i2c_resume NULL > +#endif > + > /* work with hotplug and coldplug */ > MODULE_ALIAS("platform:i2c_davinci"); > > @@ -632,6 +662,8 @@ static struct platform_driver davinci_i2c_driver = { > .name = "i2c_davinci", > .owner = THIS_MODULE, > }, > + .suspend = davinci_i2c_suspend, > + .resume = davinci_i2c_resume,
Rather than adding these to the platform_driver, you should use dev_pm_ops. Something like the patch below on top of your PATCH 3/4 should work. Other than this, I'm OK with this series, feel free to add my signoff and resend to linux-i2c and LKML. linux-i2c has had very slow response to embedded patches lately. Kevin _______________________________________________ Davinci-linux-open-source mailing list [email protected] http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
