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@xxxxxxxxxxxxxxxx>
---
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
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html