* [PATCH v4] rtc: omap: Support ext_wakeup configuration
@ 2016-08-25 11:19 Marcin Niestroj
[not found] ` <20160825111912.23017-1-m.niestroj-z3quKL4iOrmQ6ZAhV5LmOA@public.gmane.org>
0 siblings, 1 reply; 5+ messages in thread
From: Marcin Niestroj @ 2016-08-25 11:19 UTC (permalink / raw)
To: Tony Lindgren
Cc: Grygorii Strashko, rtc-linux-/JYPxA39Uh5TLH3MbocFFw,
linux-omap-u79uwXL29TY76Z2rM5mHXA,
devicetree-u79uwXL29TY76Z2rM5mHXA, Rob Herring, Pawel Moll,
Alessandro Zummo, Alexandre Belloni, Keerthy, Marcin Niestroj
Support configuration of ext_wakeup sources. This patch makes it
possible to enable ext_wakeup and set it's polarity, depending on board
configuration. AM335x's dedicated PMIC (tps65217) uses ext_wakeup to
notify about power-button presses. Handling power-button presses enables
to recover from RTC-only power states correctly.
Signed-off-by: Marcin Niestroj <m.niestroj-z3quKL4iOrmQ6ZAhV5LmOA@public.gmane.org>
---
Hi,
This is a total reimplementation, so it is not based on any of the previos
patch versions. This patch adds support for ext_wakeup using generic pinconf
device-tree bindings, with one added "ti,input-polarity" custom property.
This approach has been suggested by Tony and Grygorii in [1].
Patch was developed on 4.6, rebased on 4.8-rc3, tested using chiliBoard.
[1] http://www.spinics.net/lists/devicetree/msg131516.html
Documentation/devicetree/bindings/rtc/rtc-omap.txt | 21 +++
drivers/rtc/Kconfig | 1 +
drivers/rtc/rtc-omap.c | 167 ++++++++++++++++++++-
3 files changed, 181 insertions(+), 8 deletions(-)
diff --git a/Documentation/devicetree/bindings/rtc/rtc-omap.txt b/Documentation/devicetree/bindings/rtc/rtc-omap.txt
index bf7d11a..5d18373 100644
--- a/Documentation/devicetree/bindings/rtc/rtc-omap.txt
+++ b/Documentation/devicetree/bindings/rtc/rtc-omap.txt
@@ -18,6 +18,18 @@ Optional properties:
through pmic_power_en
- clocks: Any internal or external clocks feeding in to rtc
- clock-names: Corresponding names of the clocks
+- pinctrl-0: a phandle pointing to the pin settings for the device
+- pinctrl-names: should be "default"
+
+Optional subnodes:
+- generic pinctrl node
+
+Required pinctrl subnodes properties:
+- pins - Names of ext_wakeup pins to configure
+
+Optional pinctrl subnodes properties:
+- input-enable - Enables ext_wakeup
+- ti,input-polarity - GPIO_ACTIVE_LOW or GPIO_ACTIVE_HIGH depending board
Example:
@@ -30,4 +42,13 @@ rtc@1c23000 {
system-power-controller;
clocks = <&clk_32k_rtc>, <&clk_32768_ck>;
clock-names = "ext-clk", "int-clk";
+
+ pinctrl-0 = <&ext_wakeup>;
+ pinctrl-names = "default";
+
+ ext_wakeup: ext_wakeup {
+ pins = "ext_wakeup0";
+ input-enable;
+ ti,input-polarity = <GPIO_ACTIVE_LOW>;
+ };
};
diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
index e215f50..647d913 100644
--- a/drivers/rtc/Kconfig
+++ b/drivers/rtc/Kconfig
@@ -1231,6 +1231,7 @@ config RTC_DRV_IMXDI
config RTC_DRV_OMAP
tristate "TI OMAP Real Time Clock"
depends on ARCH_OMAP || ARCH_DAVINCI || COMPILE_TEST
+ select GENERIC_PINCONF
help
Say "yes" here to support the on chip real time clock
present on TI OMAP1, AM33xx, DA8xx/OMAP-L13x, AM43xx and DRA7xx.
diff --git a/drivers/rtc/rtc-omap.c b/drivers/rtc/rtc-omap.c
index ec2e9c5..b817afb 100644
--- a/drivers/rtc/rtc-omap.c
+++ b/drivers/rtc/rtc-omap.c
@@ -13,19 +13,23 @@
* 2 of the License, or (at your option) any later version.
*/
-#include <linux/kernel.h>
+#include <dt-bindings/gpio/gpio.h>
+#include <linux/bcd.h>
+#include <linux/clk.h>
+#include <linux/delay.h>
#include <linux/init.h>
-#include <linux/module.h>
+#include <linux/io.h>
#include <linux/ioport.h>
-#include <linux/delay.h>
-#include <linux/rtc.h>
-#include <linux/bcd.h>
-#include <linux/platform_device.h>
+#include <linux/kernel.h>
+#include <linux/module.h>
#include <linux/of.h>
#include <linux/of_device.h>
+#include <linux/pinctrl/pinctrl.h>
+#include <linux/pinctrl/pinconf.h>
+#include <linux/pinctrl/pinconf-generic.h>
+#include <linux/platform_device.h>
#include <linux/pm_runtime.h>
-#include <linux/io.h>
-#include <linux/clk.h>
+#include <linux/rtc.h>
/*
* The OMAP RTC is a year/month/day/hours/minutes/seconds BCD clock
@@ -115,6 +119,8 @@
/* OMAP_RTC_PMIC bit fields: */
#define OMAP_RTC_PMIC_POWER_EN_EN BIT(16)
+#define OMAP_RTC_PMIC_EXT_WKUP_EN(x) BIT(x)
+#define OMAP_RTC_PMIC_EXT_WKUP_POL(x) BIT(4 + x)
/* OMAP_RTC_KICKER values */
#define KICK0_VALUE 0x83e70b13
@@ -141,6 +147,7 @@ struct omap_rtc {
bool is_pmic_controller;
bool has_ext_clk;
const struct omap_rtc_device_type *type;
+ struct pinctrl_dev *pctldev;
};
static inline u8 rtc_read(struct omap_rtc *rtc, unsigned int reg)
@@ -525,6 +532,138 @@ static const struct of_device_id omap_rtc_of_match[] = {
};
MODULE_DEVICE_TABLE(of, omap_rtc_of_match);
+static const struct pinctrl_pin_desc rtc_pins_desc[] = {
+ PINCTRL_PIN(0, "ext_wakeup0"),
+ PINCTRL_PIN(1, "ext_wakeup1"),
+ PINCTRL_PIN(2, "ext_wakeup2"),
+ PINCTRL_PIN(3, "ext_wakeup3"),
+};
+
+static int rtc_pinctrl_get_groups_count(struct pinctrl_dev *pctldev)
+{
+ return 0;
+}
+
+static const char *rtc_pinctrl_get_group_name(struct pinctrl_dev *pctldev,
+ unsigned int group)
+{
+ return NULL;
+}
+
+static const struct pinctrl_ops rtc_pinctrl_ops = {
+ .get_groups_count = rtc_pinctrl_get_groups_count,
+ .get_group_name = rtc_pinctrl_get_group_name,
+ .dt_node_to_map = pinconf_generic_dt_node_to_map_pin,
+ .dt_free_map = pinconf_generic_dt_free_map,
+};
+
+enum rtc_pin_config_param {
+ PIN_CONFIG_INPUT_POLARITY = PIN_CONFIG_END + 1,
+};
+
+static const struct pinconf_generic_params rtc_params[] = {
+ {"ti,input-polarity", PIN_CONFIG_INPUT_POLARITY, GPIO_ACTIVE_HIGH},
+};
+
+#ifdef CONFIG_DEBUG_FS
+static const struct pin_config_item rtc_conf_items[ARRAY_SIZE(rtc_params)] = {
+ PCONFDUMP(PIN_CONFIG_INPUT_POLARITY, "input polarity", NULL, true),
+};
+#endif
+
+static int rtc_pinconf_get(struct pinctrl_dev *pctldev,
+ unsigned int pin, unsigned long *config)
+{
+ struct omap_rtc *rtc = pinctrl_dev_get_drvdata(pctldev);
+ unsigned int param = pinconf_to_config_param(*config);
+ u32 val;
+ u16 arg = 0;
+
+ rtc->type->unlock(rtc);
+ val = rtc_readl(rtc, OMAP_RTC_PMIC_REG);
+ rtc->type->lock(rtc);
+
+ switch (param) {
+ case PIN_CONFIG_INPUT_ENABLE:
+ if (!(val & OMAP_RTC_PMIC_EXT_WKUP_EN(pin)))
+ return -EINVAL;
+ break;
+ case PIN_CONFIG_INPUT_POLARITY:
+ arg = !!(val & OMAP_RTC_PMIC_EXT_WKUP_POL(pin));
+ break;
+ default:
+ return -ENOTSUPP;
+ };
+
+ *config = pinconf_to_config_packed(param, arg);
+
+ return 0;
+}
+
+static int rtc_pinconf_set(struct pinctrl_dev *pctldev,
+ unsigned int pin, unsigned long *configs,
+ unsigned int num_configs)
+{
+ struct omap_rtc *rtc = pinctrl_dev_get_drvdata(pctldev);
+ u32 val;
+ unsigned int param;
+ u16 param_val;
+ int i;
+
+ rtc->type->unlock(rtc);
+ val = rtc_readl(rtc, OMAP_RTC_PMIC_REG);
+ rtc->type->lock(rtc);
+
+ for (i = 0; i < num_configs; i++) {
+ param = pinconf_to_config_param(configs[i]);
+ param_val = pinconf_to_config_argument(configs[i]);
+
+ switch (param) {
+ case PIN_CONFIG_INPUT_ENABLE:
+ if (param_val)
+ val |= OMAP_RTC_PMIC_EXT_WKUP_EN(pin);
+ else
+ val &= ~OMAP_RTC_PMIC_EXT_WKUP_EN(pin);
+ break;
+ case PIN_CONFIG_INPUT_POLARITY:
+ if (param_val == GPIO_ACTIVE_LOW)
+ val |= OMAP_RTC_PMIC_EXT_WKUP_POL(pin);
+ else
+ val &= ~OMAP_RTC_PMIC_EXT_WKUP_POL(pin);
+ break;
+ default:
+ dev_err(&rtc->rtc->dev, "Property %u not supported\n",
+ param);
+ return -ENOTSUPP;
+ }
+ }
+
+ rtc->type->unlock(rtc);
+ rtc_writel(rtc, OMAP_RTC_PMIC_REG, val);
+ rtc->type->lock(rtc);
+
+ return 0;
+}
+
+static const struct pinconf_ops rtc_pinconf_ops = {
+ .is_generic = true,
+ .pin_config_get = rtc_pinconf_get,
+ .pin_config_set = rtc_pinconf_set,
+};
+
+static struct pinctrl_desc rtc_pinctrl_desc = {
+ .pins = rtc_pins_desc,
+ .npins = ARRAY_SIZE(rtc_pins_desc),
+ .pctlops = &rtc_pinctrl_ops,
+ .confops = &rtc_pinconf_ops,
+ .custom_params = rtc_params,
+ .num_custom_params = ARRAY_SIZE(rtc_params),
+#ifdef CONFIG_DEBUG_FS
+ .custom_conf_items = rtc_conf_items,
+#endif
+ .owner = THIS_MODULE,
+};
+
static int omap_rtc_probe(struct platform_device *pdev)
{
struct omap_rtc *rtc;
@@ -681,6 +820,15 @@ static int omap_rtc_probe(struct platform_device *pdev)
}
}
+ /* Support ext_wakeup pinconf */
+ rtc_pinctrl_desc.name = dev_name(&pdev->dev);
+
+ rtc->pctldev = pinctrl_register(&rtc_pinctrl_desc, &pdev->dev, rtc);
+ if (IS_ERR(rtc->pctldev)) {
+ dev_err(&pdev->dev, "Couldn't register pinctrl driver\n");
+ return PTR_ERR(rtc->pctldev);
+ }
+
return 0;
err:
@@ -724,6 +872,9 @@ static int __exit omap_rtc_remove(struct platform_device *pdev)
pm_runtime_put_sync(&pdev->dev);
pm_runtime_disable(&pdev->dev);
+ /* Remove ext_wakeup pinconf */
+ pinctrl_unregister(rtc->pctldev);
+
return 0;
}
--
2.9.3
--
You received this message because you are subscribed to "rtc-linux".
Membership options at http://groups.google.com/group/rtc-linux .
Please read http://groups.google.com/group/rtc-linux/web/checklist
before submitting a driver.
---
You received this message because you are subscribed to the Google Groups "rtc-linux" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rtc-linux+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
For more options, visit https://groups.google.com/d/optout.
^ permalink raw reply related [flat|nested] 5+ messages in thread[parent not found: <20160825111912.23017-1-m.niestroj-z3quKL4iOrmQ6ZAhV5LmOA@public.gmane.org>]
* Re: [PATCH v4] rtc: omap: Support ext_wakeup configuration [not found] ` <20160825111912.23017-1-m.niestroj-z3quKL4iOrmQ6ZAhV5LmOA@public.gmane.org> @ 2016-08-26 14:18 ` Tony Lindgren 2016-08-30 19:59 ` Rob Herring 2016-09-01 22:29 ` Alexandre Belloni 2 siblings, 0 replies; 5+ messages in thread From: Tony Lindgren @ 2016-08-26 14:18 UTC (permalink / raw) To: Marcin Niestroj Cc: Grygorii Strashko, rtc-linux-/JYPxA39Uh5TLH3MbocFFw, linux-omap-u79uwXL29TY76Z2rM5mHXA, devicetree-u79uwXL29TY76Z2rM5mHXA, Rob Herring, Pawel Moll, Alessandro Zummo, Alexandre Belloni, Keerthy * Marcin Niestroj <m.niestroj-z3quKL4iOrmQ6ZAhV5LmOA@public.gmane.org> [160825 04:20]: > Support configuration of ext_wakeup sources. This patch makes it > possible to enable ext_wakeup and set it's polarity, depending on board > configuration. AM335x's dedicated PMIC (tps65217) uses ext_wakeup to > notify about power-button presses. Handling power-button presses enables > to recover from RTC-only power states correctly. > > Signed-off-by: Marcin Niestroj <m.niestroj-z3quKL4iOrmQ6ZAhV5LmOA@public.gmane.org> > --- > Hi, > > This is a total reimplementation, so it is not based on any of the previos > patch versions. This patch adds support for ext_wakeup using generic pinconf > device-tree bindings, with one added "ti,input-polarity" custom property. > This approach has been suggested by Tony and Grygorii in [1]. > > Patch was developed on 4.6, rebased on 4.8-rc3, tested using chiliBoard. > > [1] http://www.spinics.net/lists/devicetree/msg131516.html Thanks for persistance with this one, looks good to me: Acked-by: Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org> -- You received this message because you are subscribed to "rtc-linux". Membership options at http://groups.google.com/group/rtc-linux . Please read http://groups.google.com/group/rtc-linux/web/checklist before submitting a driver. --- You received this message because you are subscribed to the Google Groups "rtc-linux" group. To unsubscribe from this group and stop receiving emails from it, send an email to rtc-linux+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit https://groups.google.com/d/optout. ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v4] rtc: omap: Support ext_wakeup configuration [not found] ` <20160825111912.23017-1-m.niestroj-z3quKL4iOrmQ6ZAhV5LmOA@public.gmane.org> 2016-08-26 14:18 ` Tony Lindgren @ 2016-08-30 19:59 ` Rob Herring 2016-09-02 8:13 ` Marcin Niestroj 2016-09-01 22:29 ` Alexandre Belloni 2 siblings, 1 reply; 5+ messages in thread From: Rob Herring @ 2016-08-30 19:59 UTC (permalink / raw) To: Marcin Niestroj Cc: Tony Lindgren, Grygorii Strashko, rtc-linux-/JYPxA39Uh5TLH3MbocFFw, linux-omap-u79uwXL29TY76Z2rM5mHXA, devicetree-u79uwXL29TY76Z2rM5mHXA, Pawel Moll, Alessandro Zummo, Alexandre Belloni, Keerthy On Thu, Aug 25, 2016 at 01:19:12PM +0200, Marcin Niestroj wrote: > Support configuration of ext_wakeup sources. This patch makes it > possible to enable ext_wakeup and set it's polarity, depending on board > configuration. AM335x's dedicated PMIC (tps65217) uses ext_wakeup to > notify about power-button presses. Handling power-button presses enables > to recover from RTC-only power states correctly. > > Signed-off-by: Marcin Niestroj <m.niestroj-z3quKL4iOrmQ6ZAhV5LmOA@public.gmane.org> > --- > Hi, > > This is a total reimplementation, so it is not based on any of the previos > patch versions. This patch adds support for ext_wakeup using generic pinconf > device-tree bindings, with one added "ti,input-polarity" custom property. > This approach has been suggested by Tony and Grygorii in [1]. > > Patch was developed on 4.6, rebased on 4.8-rc3, tested using chiliBoard. > > [1] http://www.spinics.net/lists/devicetree/msg131516.html > > Documentation/devicetree/bindings/rtc/rtc-omap.txt | 21 +++ > drivers/rtc/Kconfig | 1 + > drivers/rtc/rtc-omap.c | 167 ++++++++++++++++++++- > 3 files changed, 181 insertions(+), 8 deletions(-) > > diff --git a/Documentation/devicetree/bindings/rtc/rtc-omap.txt b/Documentation/devicetree/bindings/rtc/rtc-omap.txt > index bf7d11a..5d18373 100644 > --- a/Documentation/devicetree/bindings/rtc/rtc-omap.txt > +++ b/Documentation/devicetree/bindings/rtc/rtc-omap.txt > @@ -18,6 +18,18 @@ Optional properties: > through pmic_power_en > - clocks: Any internal or external clocks feeding in to rtc > - clock-names: Corresponding names of the clocks > +- pinctrl-0: a phandle pointing to the pin settings for the device > +- pinctrl-names: should be "default" > + > +Optional subnodes: > +- generic pinctrl node > + > +Required pinctrl subnodes properties: > +- pins - Names of ext_wakeup pins to configure > + > +Optional pinctrl subnodes properties: > +- input-enable - Enables ext_wakeup > +- ti,input-polarity - GPIO_ACTIVE_LOW or GPIO_ACTIVE_HIGH depending board This is not a GPIO, so don't use GPIO defines. Just make this boolean with not present ideally being the more common case. > Example: > > @@ -30,4 +42,13 @@ rtc@1c23000 { > system-power-controller; > clocks = <&clk_32k_rtc>, <&clk_32768_ck>; > clock-names = "ext-clk", "int-clk"; > + > + pinctrl-0 = <&ext_wakeup>; > + pinctrl-names = "default"; > + > + ext_wakeup: ext_wakeup { Use '-', not '_' in node names. > + pins = "ext_wakeup0"; > + input-enable; > + ti,input-polarity = <GPIO_ACTIVE_LOW>; > + }; > }; -- You received this message because you are subscribed to "rtc-linux". Membership options at http://groups.google.com/group/rtc-linux . Please read http://groups.google.com/group/rtc-linux/web/checklist before submitting a driver. --- You received this message because you are subscribed to the Google Groups "rtc-linux" group. To unsubscribe from this group and stop receiving emails from it, send an email to rtc-linux+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit https://groups.google.com/d/optout. ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v4] rtc: omap: Support ext_wakeup configuration 2016-08-30 19:59 ` Rob Herring @ 2016-09-02 8:13 ` Marcin Niestroj 0 siblings, 0 replies; 5+ messages in thread From: Marcin Niestroj @ 2016-09-02 8:13 UTC (permalink / raw) To: Rob Herring Cc: Tony Lindgren, Grygorii Strashko, rtc-linux-/JYPxA39Uh5TLH3MbocFFw, linux-omap-u79uwXL29TY76Z2rM5mHXA, devicetree-u79uwXL29TY76Z2rM5mHXA, Pawel Moll, Alessandro Zummo, Alexandre Belloni, Keerthy On 30.08.2016 21:59, Rob Herring wrote: > On Thu, Aug 25, 2016 at 01:19:12PM +0200, Marcin Niestroj wrote: >> Support configuration of ext_wakeup sources. This patch makes it >> possible to enable ext_wakeup and set it's polarity, depending on board >> configuration. AM335x's dedicated PMIC (tps65217) uses ext_wakeup to >> notify about power-button presses. Handling power-button presses enables >> to recover from RTC-only power states correctly. >> >> Signed-off-by: Marcin Niestroj <m.niestroj-z3quKL4iOrmQ6ZAhV5LmOA@public.gmane.org> >> --- >> Hi, >> >> This is a total reimplementation, so it is not based on any of the previos >> patch versions. This patch adds support for ext_wakeup using generic pinconf >> device-tree bindings, with one added "ti,input-polarity" custom property. >> This approach has been suggested by Tony and Grygorii in [1]. >> >> Patch was developed on 4.6, rebased on 4.8-rc3, tested using chiliBoard. >> >> [1] http://www.spinics.net/lists/devicetree/msg131516.html >> >> Documentation/devicetree/bindings/rtc/rtc-omap.txt | 21 +++ >> drivers/rtc/Kconfig | 1 + >> drivers/rtc/rtc-omap.c | 167 ++++++++++++++++++++- >> 3 files changed, 181 insertions(+), 8 deletions(-) >> >> diff --git a/Documentation/devicetree/bindings/rtc/rtc-omap.txt b/Documentation/devicetree/bindings/rtc/rtc-omap.txt >> index bf7d11a..5d18373 100644 >> --- a/Documentation/devicetree/bindings/rtc/rtc-omap.txt >> +++ b/Documentation/devicetree/bindings/rtc/rtc-omap.txt >> @@ -18,6 +18,18 @@ Optional properties: >> through pmic_power_en >> - clocks: Any internal or external clocks feeding in to rtc >> - clock-names: Corresponding names of the clocks >> +- pinctrl-0: a phandle pointing to the pin settings for the device >> +- pinctrl-names: should be "default" >> + >> +Optional subnodes: >> +- generic pinctrl node >> + >> +Required pinctrl subnodes properties: >> +- pins - Names of ext_wakeup pins to configure >> + >> +Optional pinctrl subnodes properties: >> +- input-enable - Enables ext_wakeup >> +- ti,input-polarity - GPIO_ACTIVE_LOW or GPIO_ACTIVE_HIGH depending board > > This is not a GPIO, so don't use GPIO defines. Just make this boolean > with not present ideally being the more common case. > >> Example: >> >> @@ -30,4 +42,13 @@ rtc@1c23000 { >> system-power-controller; >> clocks = <&clk_32k_rtc>, <&clk_32768_ck>; >> clock-names = "ext-clk", "int-clk"; >> + >> + pinctrl-0 = <&ext_wakeup>; >> + pinctrl-names = "default"; >> + >> + ext_wakeup: ext_wakeup { > > Use '-', not '_' in node names. To be sure... It should look like below? ext_wakeup: ext-wakeup { pins = "ext_wakeup0"; input-enable; ti,active-high; } > >> + pins = "ext_wakeup0"; >> + input-enable; >> + ti,input-polarity = <GPIO_ACTIVE_LOW>; >> + }; >> }; -- Marcin Niestroj -- You received this message because you are subscribed to "rtc-linux". Membership options at http://groups.google.com/group/rtc-linux . Please read http://groups.google.com/group/rtc-linux/web/checklist before submitting a driver. --- You received this message because you are subscribed to the Google Groups "rtc-linux" group. To unsubscribe from this group and stop receiving emails from it, send an email to rtc-linux+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit https://groups.google.com/d/optout. ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v4] rtc: omap: Support ext_wakeup configuration [not found] ` <20160825111912.23017-1-m.niestroj-z3quKL4iOrmQ6ZAhV5LmOA@public.gmane.org> 2016-08-26 14:18 ` Tony Lindgren 2016-08-30 19:59 ` Rob Herring @ 2016-09-01 22:29 ` Alexandre Belloni 2 siblings, 0 replies; 5+ messages in thread From: Alexandre Belloni @ 2016-09-01 22:29 UTC (permalink / raw) To: Marcin Niestroj Cc: Tony Lindgren, Grygorii Strashko, rtc-linux-/JYPxA39Uh5TLH3MbocFFw, linux-omap-u79uwXL29TY76Z2rM5mHXA, devicetree-u79uwXL29TY76Z2rM5mHXA, Rob Herring, Pawel Moll, Alessandro Zummo, Keerthy Hi, On 25/08/2016 at 13:19:12 +0200, Marcin Niestroj wrote : > Support configuration of ext_wakeup sources. This patch makes it > possible to enable ext_wakeup and set it's polarity, depending on board > configuration. AM335x's dedicated PMIC (tps65217) uses ext_wakeup to > notify about power-button presses. Handling power-button presses enables > to recover from RTC-only power states correctly. > > Signed-off-by: Marcin Niestroj <m.niestroj-z3quKL4iOrmQ6ZAhV5LmOA@public.gmane.org> > --- > Hi, > > This is a total reimplementation, so it is not based on any of the previos > patch versions. This patch adds support for ext_wakeup using generic pinconf > device-tree bindings, with one added "ti,input-polarity" custom property. > This approach has been suggested by Tony and Grygorii in [1]. > > Patch was developed on 4.6, rebased on 4.8-rc3, tested using chiliBoard. > > [1] http://www.spinics.net/lists/devicetree/msg131516.html > > Documentation/devicetree/bindings/rtc/rtc-omap.txt | 21 +++ > drivers/rtc/Kconfig | 1 + > drivers/rtc/rtc-omap.c | 167 ++++++++++++++++++++- > 3 files changed, 181 insertions(+), 8 deletions(-) > I'm fine with this patch and I'll apply it as soon as you fix the comments from Rob. Thanks! -- Alexandre Belloni, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com -- You received this message because you are subscribed to "rtc-linux". Membership options at http://groups.google.com/group/rtc-linux . Please read http://groups.google.com/group/rtc-linux/web/checklist before submitting a driver. --- You received this message because you are subscribed to the Google Groups "rtc-linux" group. To unsubscribe from this group and stop receiving emails from it, send an email to rtc-linux+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit https://groups.google.com/d/optout. ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2016-09-02 8:13 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-25 11:19 [PATCH v4] rtc: omap: Support ext_wakeup configuration Marcin Niestroj
[not found] ` <20160825111912.23017-1-m.niestroj-z3quKL4iOrmQ6ZAhV5LmOA@public.gmane.org>
2016-08-26 14:18 ` Tony Lindgren
2016-08-30 19:59 ` Rob Herring
2016-09-02 8:13 ` Marcin Niestroj
2016-09-01 22:29 ` Alexandre Belloni
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox