From: Krzysztof Kozlowski Date: Wed, 26 May 2021 12:47:10 +0000 (-0400) Subject: mfd: sec: Enable wakeup from suspend via devicetree property X-Git-Tag: v5.15~794^2~23 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2056f024c89cf2c7cd5eeab47592e3c397efb468;p=platform%2Fkernel%2Flinux-starfive.git mfd: sec: Enable wakeup from suspend via devicetree property Set device wakeup capability from devicetree property (done by drivers core), instead of always setting it to 0 (because value in platform data is not assigned). This should not have visible effect on actual resuming from suspend because the child device - S5M RTC driver - is responsible for waking up and sets device wakeup unconditionally. Signed-off-by: Krzysztof Kozlowski Signed-off-by: Lee Jones --- diff --git a/drivers/mfd/sec-core.c b/drivers/mfd/sec-core.c index a9d4fbc..1fb29c4 100644 --- a/drivers/mfd/sec-core.c +++ b/drivers/mfd/sec-core.c @@ -298,12 +298,6 @@ sec_pmic_i2c_parse_dt_pdata(struct device *dev) if (!pd) return ERR_PTR(-ENOMEM); - /* - * ToDo: the 'wakeup' member in the platform data is more of a linux - * specfic information. Hence, there is no binding for that yet and - * not parsed here. - */ - pd->manual_poweroff = of_property_read_bool(dev->of_node, "samsung,s2mps11-acokb-ground"); pd->disable_wrstbi = of_property_read_bool(dev->of_node, @@ -337,7 +331,6 @@ static int sec_pmic_probe(struct i2c_client *i2c, } sec_pmic->device_type = (unsigned long)of_device_get_match_data(sec_pmic->dev); - sec_pmic->wakeup = pdata->wakeup; sec_pmic->pdata = pdata; switch (sec_pmic->device_type) { @@ -429,7 +422,6 @@ static int sec_pmic_probe(struct i2c_client *i2c, if (ret) return ret; - device_init_wakeup(sec_pmic->dev, sec_pmic->wakeup); sec_pmic_configure(sec_pmic); sec_pmic_dump_rev(sec_pmic); diff --git a/include/linux/mfd/samsung/core.h b/include/linux/mfd/samsung/core.h index 9864f13..b0d049a 100644 --- a/include/linux/mfd/samsung/core.h +++ b/include/linux/mfd/samsung/core.h @@ -69,8 +69,6 @@ struct sec_pmic_dev { unsigned long device_type; int irq; struct regmap_irq_chip_data *irq_data; - - bool wakeup; }; int sec_irq_init(struct sec_pmic_dev *sec_pmic); @@ -82,7 +80,6 @@ struct sec_platform_data { struct sec_opmode_data *opmode; int num_regulators; - bool wakeup; bool buck_voltage_lock; int buck_gpios[3];