aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/i2c
diff options
context:
space:
mode:
authorRussell King <rmk@arm.linux.org.uk>2005-10-28 12:52:56 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2005-10-28 12:52:56 -0400
commit9480e307cd88ef09ec9294c7d97ebec18e6d2221 (patch)
tree967e26d3a23c24dd52b114d672312c207714308c /drivers/i2c
parenta3a3395e487abc4c1371fe319a8ecbb3913a70a4 (diff)
[PATCH] DRIVER MODEL: Get rid of the obsolete tri-level suspend/resume callbacks
In PM v1, all devices were called at SUSPEND_DISABLE level. Then all devices were called at SUSPEND_SAVE_STATE level, and finally SUSPEND_POWER_DOWN level. However, with PM v2, to maintain compatibility for platform devices, I arranged for the PM v2 suspend/resume callbacks to call the old PM v1 suspend/resume callbacks three times with each level in order so that existing drivers continued to work. Since this is obsolete infrastructure which is no longer necessary, we can remove it. Here's an (untested) patch to do exactly that. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/i2c')
-rw-r--r--drivers/i2c/busses/i2c-s3c2410.c8
-rw-r--r--drivers/i2c/i2c-core.c4
2 files changed, 5 insertions, 7 deletions
diff --git a/drivers/i2c/busses/i2c-s3c2410.c b/drivers/i2c/busses/i2c-s3c2410.c
index 73a092fb0e7e..69fa282df2d5 100644
--- a/drivers/i2c/busses/i2c-s3c2410.c
+++ b/drivers/i2c/busses/i2c-s3c2410.c
@@ -879,14 +879,12 @@ static int s3c24xx_i2c_remove(struct device *dev)
879} 879}
880 880
881#ifdef CONFIG_PM 881#ifdef CONFIG_PM
882static int s3c24xx_i2c_resume(struct device *dev, u32 level) 882static int s3c24xx_i2c_resume(struct device *dev)
883{ 883{
884 struct s3c24xx_i2c *i2c = dev_get_drvdata(dev); 884 struct s3c24xx_i2c *i2c = dev_get_drvdata(dev);
885 885
886 if (i2c != NULL && level == RESUME_ENABLE) { 886 if (i2c != NULL)
887 dev_dbg(dev, "resume: level %d\n", level);
888 s3c24xx_i2c_init(i2c); 887 s3c24xx_i2c_init(i2c);
889 }
890 888
891 return 0; 889 return 0;
892} 890}
diff --git a/drivers/i2c/i2c-core.c b/drivers/i2c/i2c-core.c
index dda472e5e8be..45aa0e54e297 100644
--- a/drivers/i2c/i2c-core.c
+++ b/drivers/i2c/i2c-core.c
@@ -48,7 +48,7 @@ static int i2c_bus_suspend(struct device * dev, pm_message_t state)
48 int rc = 0; 48 int rc = 0;
49 49
50 if (dev->driver && dev->driver->suspend) 50 if (dev->driver && dev->driver->suspend)
51 rc = dev->driver->suspend(dev,state,0); 51 rc = dev->driver->suspend(dev, state);
52 return rc; 52 return rc;
53} 53}
54 54
@@ -57,7 +57,7 @@ static int i2c_bus_resume(struct device * dev)
57 int rc = 0; 57 int rc = 0;
58 58
59 if (dev->driver && dev->driver->resume) 59 if (dev->driver && dev->driver->resume)
60 rc = dev->driver->resume(dev,0); 60 rc = dev->driver->resume(dev);
61 return rc; 61 return rc;
62} 62}
63 63