[PATCH 2/2] power: gpio-charger: support disable the wakeup event

Chris Zhong zyw at rock-chips.com
Tue Feb 10 00:12:25 PST 2015


Support disable the wakeup event of gpio-charger by setting device tree.

Signed-off-by: Chris Zhong <zyw at rock-chips.com>

---

 drivers/power/gpio-charger.c       | 5 ++++-
 include/linux/power/gpio-charger.h | 1 +
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/power/gpio-charger.c b/drivers/power/gpio-charger.c
index b7424c8..06ed22e 100644
--- a/drivers/power/gpio-charger.c
+++ b/drivers/power/gpio-charger.c
@@ -98,6 +98,9 @@ struct gpio_charger_platform_data *gpio_charger_parse_dt(struct device *dev)
 
 	pdata->gpio_active_low = !!(flags & OF_GPIO_ACTIVE_LOW);
 
+	pdata->wakeup = !of_get_property(np, "gpio-charger,disable-wakeup",
+					 NULL);
+
 	pdata->type = POWER_SUPPLY_TYPE_UNKNOWN;
 	ret = of_property_read_string(np, "charger-type", &chargetype);
 	if (ret >= 0) {
@@ -198,7 +201,7 @@ static int gpio_charger_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, gpio_charger);
 
-	device_init_wakeup(&pdev->dev, 1);
+	device_init_wakeup(&pdev->dev, pdata->wakeup);
 
 	return 0;
 
diff --git a/include/linux/power/gpio-charger.h b/include/linux/power/gpio-charger.h
index de1dfe0..a5fdef3 100644
--- a/include/linux/power/gpio-charger.h
+++ b/include/linux/power/gpio-charger.h
@@ -33,6 +33,7 @@ struct gpio_charger_platform_data {
 
 	int gpio;
 	int gpio_active_low;
+	int wakeup;
 
 	char **supplied_to;
 	size_t num_supplicants;
-- 
1.9.1




More information about the Linux-rockchip mailing list