aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorJonghwan Choi <jhbird.choi@samsung.com>2011-11-29 03:17:51 -0500
committerSamuel Ortiz <sameo@linux.intel.com>2012-01-08 18:37:36 -0500
commit7ef73598d4ca8add089d5eb9f3b78e9540a1a98d (patch)
tree438e1d669b4cdcbbcda3e45a0599aa87d7afd985 /drivers
parentbdd6a67a3936f4da5ef382ec640b8d1eb1f209fa (diff)
mfd: Use standard device wakeup for handling max8998 wakeup device
Use device_init_wakeup & device_may_wakeup to init wakeup Signed-off-by: Jonghwan Choi <jhbird.choi@samsung.com> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mfd/max8998.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/mfd/max8998.c b/drivers/mfd/max8998.c
index de4096aee24..6ef56d28c05 100644
--- a/drivers/mfd/max8998.c
+++ b/drivers/mfd/max8998.c
@@ -176,6 +176,8 @@ static int max8998_i2c_probe(struct i2c_client *i2c,
176 if (ret < 0) 176 if (ret < 0)
177 goto err; 177 goto err;
178 178
179 device_init_wakeup(max8998->dev, max8998->wakeup);
180
179 return ret; 181 return ret;
180 182
181err: 183err:
@@ -210,7 +212,7 @@ static int max8998_suspend(struct device *dev)
210 struct i2c_client *i2c = container_of(dev, struct i2c_client, dev); 212 struct i2c_client *i2c = container_of(dev, struct i2c_client, dev);
211 struct max8998_dev *max8998 = i2c_get_clientdata(i2c); 213 struct max8998_dev *max8998 = i2c_get_clientdata(i2c);
212 214
213 if (max8998->wakeup) 215 if (device_may_wakeup(dev))
214 irq_set_irq_wake(max8998->irq, 1); 216 irq_set_irq_wake(max8998->irq, 1);
215 return 0; 217 return 0;
216} 218}
@@ -220,7 +222,7 @@ static int max8998_resume(struct device *dev)
220 struct i2c_client *i2c = container_of(dev, struct i2c_client, dev); 222 struct i2c_client *i2c = container_of(dev, struct i2c_client, dev);
221 struct max8998_dev *max8998 = i2c_get_clientdata(i2c); 223 struct max8998_dev *max8998 = i2c_get_clientdata(i2c);
222 224
223 if (max8998->wakeup) 225 if (device_may_wakeup(dev))
224 irq_set_irq_wake(max8998->irq, 0); 226 irq_set_irq_wake(max8998->irq, 0);
225 /* 227 /*
226 * In LP3974, if IRQ registers are not "read & clear" 228 * In LP3974, if IRQ registers are not "read & clear"