Commit f10513de2a6036742b55e23278f0322f2e5c3772
Committed by
Anton Vorontsov
1 parent
b14a9ccc1d
Exists in
master
and in
4 other branches
gpio-charger: Add gpio_charger_resume
Gpio charger should notify if the gpio state had changed during suspend. This will send a CHANGED event each time the system resumes, ensuring a plug/unplug of the charger is not missed. Signed-off-by: Benson Leung <bleung@chromium.org> Acked-By: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
Showing 1 changed file with 15 additions and 0 deletions Side-by-side Diff
drivers/power/gpio-charger.c
... | ... | @@ -161,12 +161,27 @@ |
161 | 161 | return 0; |
162 | 162 | } |
163 | 163 | |
164 | +#ifdef CONFIG_PM_SLEEP | |
165 | +static int gpio_charger_resume(struct device *dev) | |
166 | +{ | |
167 | + struct platform_device *pdev = to_platform_device(dev); | |
168 | + struct gpio_charger *gpio_charger = platform_get_drvdata(pdev); | |
169 | + | |
170 | + power_supply_changed(&gpio_charger->charger); | |
171 | + | |
172 | + return 0; | |
173 | +} | |
174 | +#endif | |
175 | + | |
176 | +static SIMPLE_DEV_PM_OPS(gpio_charger_pm_ops, NULL, gpio_charger_resume); | |
177 | + | |
164 | 178 | static struct platform_driver gpio_charger_driver = { |
165 | 179 | .probe = gpio_charger_probe, |
166 | 180 | .remove = __devexit_p(gpio_charger_remove), |
167 | 181 | .driver = { |
168 | 182 | .name = "gpio-charger", |
169 | 183 | .owner = THIS_MODULE, |
184 | + .pm = &gpio_charger_pm_ops, | |
170 | 185 | }, |
171 | 186 | }; |
172 | 187 |