Subject: [PATCH 1/3] ARM: DTS: OMAP3: beagle/overo: mux console UART, enable wakeup

From: [email-masked] (Florian Vaussard)
Date: Mon, 03 Jun 2013 11:36:31 +0200

Hello Kevin,

On 06/01/2013 12:45 AM, Kevin Hilman wrote:
> Ensure the console uart (UART3) on these boards is mux'd correctly, and
> IO ring wakeup is enabled.
>
> This is needed for serial console wakeups when using DT boot.
>
> Signed-off-by: Kevin Hilman <[email-masked]>
> ---
>   arch/arm/boot/dts/omap3-beagle-xm.dts | 14 ++++++++++++++
>   arch/arm/boot/dts/omap3-beagle.dts    | 12 ++++++++++++
>   arch/arm/boot/dts/omap3-overo.dtsi    | 14 ++++++++++++++
>   3 files changed, 40 insertions(+)
>
> diff --git a/arch/arm/boot/dts/omap3-beagle-xm.dts b/arch/arm/boot/dts/omap3-beagle-xm.dts
> index 3046d1f..ca067b0 100644
> --- a/arch/arm/boot/dts/omap3-beagle-xm.dts
> +++ b/arch/arm/boot/dts/omap3-beagle-xm.dts
> @@ -126,3 +126,17 @@
>   	mode = <3>;
>   	power = <50>;
>   };
> +
> +&omap3_pmx_core {
> +	uart3_pins: pinmux_uart3_pins {
> +		pinctrl-single,pins = <
> +			0x16e 0x4100	/* uart3_rx_irrx.uart3_rx_irrx WAKEUP | INPUT | MODE0 */
> +			0x170 0x0	/* uart3_tx_irtx.uart3_tx_irtx OUTPUT | MODE0 */

If you go through Benoit's tree, could you use the newly introduced 
constants [1]? They are defined
in include/dt-bindings/pinctrl/omap.h. The above will look:

			0x16e (PIN_INPUT | WAKEUP_EVENT | MUX_MODE0)	/* 
uart3_rx_irrx.uart3_rx_irrx */
			0x170 (PIN_OUTPUT | MUX_MODE0)			/* uart3_tx_irtx.uart3_tx_irtx */

> +		>;
> +	};
> +};
> +
> +&uart3 {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&uart3_pins>;
> +};
> diff --git a/arch/arm/boot/dts/omap3-beagle.dts b/arch/arm/boot/dts/omap3-beagle.dts
> index 6eec699..b004372 100644
> --- a/arch/arm/boot/dts/omap3-beagle.dts
> +++ b/arch/arm/boot/dts/omap3-beagle.dts
> @@ -95,6 +95,13 @@
>   			0x1ae 0x10b  /* USBB2_ULPITLL_CLK_MUXMODE.usbb1_ulpiphy_dat7 INPUT | PULLDOWN */
>   		>;
>   	};
> +
> +	uart3_pins: pinmux_uart3_pins {
> +		pinctrl-single,pins = <
> +			0x16e 0x4100	/* uart3_rx_irrx.uart3_rx_irrx WAKEUP | INPUT | MODE0 */
> +			0x170 0x0	/* uart3_tx_irtx.uart3_tx_irtx OUTPUT | MODE0 */

Same here

> +		>;
> +	};
>   };
>
>   &i2c1 {
> @@ -142,3 +149,8 @@
>   	 */
>   	ti,pulldowns = <0x03a1c4>;
>   };
> +
> +&uart3 {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&uart3_pins>;
> +};
> diff --git a/arch/arm/boot/dts/omap3-overo.dtsi b/arch/arm/boot/dts/omap3-overo.dtsi
> index a626c50..d63ed39 100644
> --- a/arch/arm/boot/dts/omap3-overo.dtsi
> +++ b/arch/arm/boot/dts/omap3-overo.dtsi
> @@ -77,3 +77,17 @@
>   	mode = <3>;
>   	power = <50>;
>   };
> +
> +&omap3_pmx_core {
> +	uart3_pins: pinmux_uart3_pins {
> +		pinctrl-single,pins = <
> +			0x16e 0x4100	/* uart3_rx_irrx.uart3_rx_irrx WAKEUP | INPUT | MODE0 */
> +			0x170 0x0	/* uart3_tx_irtx.uart3_tx_irtx OUTPUT | MODE0 */

Same here

> +		>;
> +	};
> +};
> +
> +&uart3 {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&uart3_pins>;
> +};
>

Regards,

Florian

[1] http://thread.gmane.org/gmane.linux.drivers.devicetree/36951