All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] dt-bindings: serial: add documentation for Rx in-band wakeup support
@ 2019-06-11 12:15 Claire Chang
       [not found] ` <20190611121510.260188-1-tientzu-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
  0 siblings, 1 reply; 2+ messages in thread
From: Claire Chang @ 2019-06-11 12:15 UTC (permalink / raw)
  To: robh+dt-DgEjT+Ai2ygdnm+yROfE0A
  Cc: mark.rutland-5wv7dgnIgG8, devicetree-u79uwXL29TY76Z2rM5mHXA,
	drinkcat-F7+t8E8rja9g9hUCZPvPmw,
	changqi.hu-NuS5LvNUpcJWk0Htik3J/w,
	gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r,
	linux-mediatek-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	linux-serial-u79uwXL29TY76Z2rM5mHXA, Claire Chang

To support Rx in-band wakeup, one must create an interrupt specifier with
edge sensitivity on Rx pin and an addtional pinctrl to reconfigure Rx pin
to normal GPIO in sleep state. Driver will switch to sleep mode pinctrl and
enable irq wake before suspend and restore to default settings when
resuming.

Signed-off-by: Claire Chang <tientzu-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
---
Resending this patch since I forgot to cc device tree maintainers/mailing list.
The 2/2 patch in this series[1] is already in tty-next[2].

[1] https://patchwork.kernel.org/patch/10962299/
[2] https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/log/?h=tty-testing

 .../devicetree/bindings/serial/mtk-uart.txt         | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/serial/mtk-uart.txt b/Documentation/devicetree/bindings/serial/mtk-uart.txt
index bcfb13194f16..3488b6e24e0c 100644
--- a/Documentation/devicetree/bindings/serial/mtk-uart.txt
+++ b/Documentation/devicetree/bindings/serial/mtk-uart.txt
@@ -21,7 +21,12 @@ Required properties:
 
 - reg: The base address of the UART register bank.
 
-- interrupts: A single interrupt specifier.
+- interrupts or interrupts-extended:
+  index 0: an interrupt specifier for the UART controller itself
+  index 1: optional, an interrupt specifier with edge sensitivity on Rx pin to
+           support Rx in-band wake up. If one would like to use this feature,
+           one must create an addtional pinctrl to reconfigure Rx pin to normal
+           GPIO before suspend.
 
 - clocks : Must contain an entry for each entry in clock-names.
   See ../clocks/clock-bindings.txt for details.
@@ -37,7 +42,11 @@ Example:
 	uart0: serial@11006000 {
 		compatible = "mediatek,mt6589-uart", "mediatek,mt6577-uart";
 		reg = <0x11006000 0x400>;
-		interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_LOW>;
+		interrupts-extended = <&sysirq GIC_SPI 51 IRQ_TYPE_LEVEL_LOW>,
+				      <&gpio 121 IRQ_TYPE_EDGE_FALLING>;
 		clocks = <&uart_clk>, <&bus_clk>;
 		clock-names = "baud", "bus";
+		pinctrl-names = "default", "sleep";
+		pinctrl-0 = <&uart_pin>;
+		pinctrl-1 = <&uart_pin_sleep>;
 	};
-- 
2.22.0.rc2.383.gf4fbbf30c2-goog

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] dt-bindings: serial: add documentation for Rx in-band wakeup support
       [not found] ` <20190611121510.260188-1-tientzu-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
@ 2019-06-13 14:40   ` Rob Herring
  0 siblings, 0 replies; 2+ messages in thread
From: Rob Herring @ 2019-06-13 14:40 UTC (permalink / raw)
  To: Claire Chang
  Cc: Mark Rutland, devicetree-u79uwXL29TY76Z2rM5mHXA, Nicolas Boichat,
	changqi.hu-NuS5LvNUpcJWk0Htik3J/w, Greg Kroah-Hartman,
	moderated list:ARM/Mediatek SoC support,
	open list:SERIAL DRIVERS

On Tue, Jun 11, 2019 at 6:15 AM Claire Chang <tientzu-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org> wrote:
>
> To support Rx in-band wakeup, one must create an interrupt specifier with
> edge sensitivity on Rx pin and an addtional pinctrl to reconfigure Rx pin
> to normal GPIO in sleep state. Driver will switch to sleep mode pinctrl and
> enable irq wake before suspend and restore to default settings when
> resuming.
>
> Signed-off-by: Claire Chang <tientzu-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
> ---
> Resending this patch since I forgot to cc device tree maintainers/mailing list.
> The 2/2 patch in this series[1] is already in tty-next[2].
>
> [1] https://patchwork.kernel.org/patch/10962299/
> [2] https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/log/?h=tty-testing
>
>  .../devicetree/bindings/serial/mtk-uart.txt         | 13 +++++++++++--
>  1 file changed, 11 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/serial/mtk-uart.txt b/Documentation/devicetree/bindings/serial/mtk-uart.txt
> index bcfb13194f16..3488b6e24e0c 100644
> --- a/Documentation/devicetree/bindings/serial/mtk-uart.txt
> +++ b/Documentation/devicetree/bindings/serial/mtk-uart.txt
> @@ -21,7 +21,12 @@ Required properties:
>
>  - reg: The base address of the UART register bank.
>
> -- interrupts: A single interrupt specifier.
> +- interrupts or interrupts-extended:

interrupts-extended support is implied as both are supported and the
connection to the interrupt parent is outside the scope of the
binding. So we just document 'interrupts'.

> +  index 0: an interrupt specifier for the UART controller itself
> +  index 1: optional, an interrupt specifier with edge sensitivity on Rx pin to
> +           support Rx in-band wake up. If one would like to use this feature,
> +           one must create an addtional pinctrl to reconfigure Rx pin to normal
> +           GPIO before suspend.
>
>  - clocks : Must contain an entry for each entry in clock-names.
>    See ../clocks/clock-bindings.txt for details.
> @@ -37,7 +42,11 @@ Example:
>         uart0: serial@11006000 {
>                 compatible = "mediatek,mt6589-uart", "mediatek,mt6577-uart";
>                 reg = <0x11006000 0x400>;
> -               interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_LOW>;
> +               interrupts-extended = <&sysirq GIC_SPI 51 IRQ_TYPE_LEVEL_LOW>,
> +                                     <&gpio 121 IRQ_TYPE_EDGE_FALLING>;
>                 clocks = <&uart_clk>, <&bus_clk>;
>                 clock-names = "baud", "bus";
> +               pinctrl-names = "default", "sleep";
> +               pinctrl-0 = <&uart_pin>;
> +               pinctrl-1 = <&uart_pin_sleep>;
>         };
> --
> 2.22.0.rc2.383.gf4fbbf30c2-goog
>

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-06-13 14:40 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-11 12:15 [PATCH] dt-bindings: serial: add documentation for Rx in-band wakeup support Claire Chang
     [not found] ` <20190611121510.260188-1-tientzu-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
2019-06-13 14:40   ` Rob Herring

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.