Re: [PATCH v2] arm64: allwinner: a64: orangepi-zero-plus2: add usb otg

From: Maxime Ripard
Date: Mon Jan 15 2018 - 10:34:21 EST


On Mon, Jan 15, 2018 at 04:05:07PM +0800, Icenowy Zheng wrote:
> å 2018å1æ15æææä CST äå4:01:39ïMaxime Ripard åéï
> > Hi,
> >
> > On Fri, Jan 12, 2018 at 02:39:04PM +0530, Jagan Teki wrote:
> > > Add usb otg support for orangepi-zero-plus2 board:
> > > - Add usb_otg node with dr_mode as 'otg'
> > > - USB0-IDDET connected to PA21
> > > - VBUS connected through DCIN which always on
> > >
> > > Tested mass storage function.
> > >
> > > Signed-off-by: Jagan Teki <jagan@xxxxxxxxxxxxxxxxxxxx>
> > > ---
> > > Changes for v2:
> > > - Change dr_mode to peripheral
> > >
> > > .../dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts | 18
> > > ++++++++++++++++++ 1 file changed, 18 insertions(+)
> > >
> > > diff --git
> > > a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
> > > b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts index
> > > af43533..6511190 100644
> > > --- a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
> > > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
> > > @@ -73,6 +73,10 @@
> > >
> > > };
> > >
> > > };
> > >
> > > +&ehci0 {
> > > + status = "okay";
> > > +};
> > > +
> > >
> > > &mmc0 {
> > >
> > > pinctrl-names = "default";
> > > pinctrl-0 = <&mmc0_pins_a>;
> > >
> > > @@ -111,6 +115,10 @@
> > >
> > > status = "okay";
> > >
> > > };
> > >
> > > +&ohci0 {
> > > + status = "okay";
> > > +};
> > > +
> > >
> > > &uart0 {
> > >
> > > pinctrl-names = "default";
> > > pinctrl-0 = <&uart0_pins_a>;
> > >
> > > @@ -122,3 +130,13 @@
> > >
> > > pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
> > > status = "okay";
> > >
> > > };
> > >
> > > +
> > > +&usb_otg {
> > > + dr_mode = "peripheral";
> >
> > If VBUS is always on, this can only operate safely in host mode, not
> > peripheral.
>
> I think this kind of device is designed to directly drain power from the host
> in peripheral mode.

Then the commit log has it backwards, VBUS is not connected through
DCIN, DCIN is VBUS.

Maxime

--
Maxime Ripard, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

Attachment: signature.asc
Description: PGP signature