Re: [PATCH v4] rtc: omap: Support ext_wakeup configuration

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




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



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux