From ff964962a0fecc1effc836711defea3954718ce6 Mon Sep 17 00:00:00 2001 From: Cyrille Pitchen Date: Tue, 23 Jun 2015 17:51:45 +0200 Subject: [PATCH] ARM: dts: at91: sama5d2 Xplained: set pin muxing for usb gadget and usb host For USB gadget on port A (device mode): - pin PA31 is configured as an input GPIO which triggers an interrupt when vbus is detected on USB port A. - pin PB9 is configured as an output GPIO and set to low level so the board doesn't supply vbus to USB port A. For USB host: - pin PB10 is configured as an output GPIO and is active at high level. The ohci driver will activate this pin so the board supplies vbus to USB port B. - pin PB9 should be configured as an output GPIO and active at high level to use to USB port A in host mode (conflicts with USB gadget). Signed-off-by: Cyrille Pitchen Acked-by: Alexandre Belloni Signed-off-by: Nicolas Ferre --- arch/arm/boot/dts/at91-sama5d2_xplained.dts | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/arch/arm/boot/dts/at91-sama5d2_xplained.dts b/arch/arm/boot/dts/at91-sama5d2_xplained.dts index 75341eec2dfd..382ccfb4a2b6 100644 --- a/arch/arm/boot/dts/at91-sama5d2_xplained.dts +++ b/arch/arm/boot/dts/at91-sama5d2_xplained.dts @@ -46,6 +46,7 @@ #include "sama5d2.dtsi" #include "sama5d2-pinfunc.h" #include +#include / { model = "Atmel SAMA5D2 Xplained"; @@ -71,11 +72,20 @@ ahb { usb0: gadget@00300000 { + atmel,vbus-gpio = <&pioA 31 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usba_vbus>; status = "okay"; }; usb1: ohci@00400000 { num-ports = <3>; + atmel,vbus-gpio = <0 /* &pioA 41 GPIO_ACTIVE_HIGH */ + &pioA 42 GPIO_ACTIVE_HIGH + 0 + >; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usb_default>; status = "okay"; }; @@ -376,6 +386,17 @@ ; bias-disable; }; + + pinctrl_usb_default: usb_default { + pinmux = ; + bias-disable; + }; + + pinctrl_usba_vbus: usba_vbus { + pinmux = ; + bias-disable; + }; + }; }; }; -- 2.20.1