Message ID | 1515738618-3617-1-git-send-email-jagan@amarulasolutions.com |
---|---|
State | Not Applicable, archived |
Headers | show |
Series | [v4,1/3] regulator: axp20x: add drivevbus support for axp803 | expand |
On Fri, Jan 12, 2018 at 2:30 PM, Jagan Teki <jagan@amarulasolutions.com> wrote: > Add usb otg support for bananapi-m64 board, > - USB-ID connected with PH9 > - USB-DRVVBUS controlled by N_VBUSEN pin from PMIC > > Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> > --- > Changes for v4: > - rebase on master > - tested otg host mode. > Changes for v3: > - Move the position of reg_drivevbus as per binding documentation. > Changes for v2: > - add drvvbus regulator > - add N_VBUSEN pin > > .../boot/dts/allwinner/sun50i-a64-bananapi-m64.dts | 21 +++++++++++++++++++++ > 1 file changed, 21 insertions(+) > > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts > index a697567..26e8534 100644 > --- a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts > +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts > @@ -86,6 +86,10 @@ > }; > }; > > +&ehci0 { > + status = "okay"; > +}; > + > &ehci1 { > status = "okay"; > }; > @@ -156,6 +160,10 @@ > status = "okay"; > }; > > +&ohci0 { > + status = "okay"; > +}; > + > &ohci1 { > status = "okay"; > }; > @@ -168,6 +176,7 @@ > reg = <0x3a3>; > interrupt-parent = <&r_intc>; > interrupts = <0 IRQ_TYPE_LEVEL_LOW>; > + x-powers,drive-vbus-en; /* set N_VBUSEN as output pin */ > }; > }; > > @@ -283,6 +292,11 @@ > regulator-name = "vcc-rtc"; > }; > > +®_drivevbus { Please keep the nodes in alphabetical order. Otherwise, Reviewed-by: Chen-Yu Tsai <wens@csie.org> > + regulator-name = "usb0-vbus"; > + status = "okay"; > +}; > + > &uart0 { > pinctrl-names = "default"; > pinctrl-0 = <&uart0_pins_a>; > @@ -295,6 +309,13 @@ > status = "okay"; > }; > > +&usb_otg { > + dr_mode = "otg"; > + status = "okay"; > +}; > + > &usbphy { > + usb0_id_det-gpios = <&pio 7 9 GPIO_ACTIVE_HIGH>; /* PH9 */ > + usb0_vbus-supply = <®_drivevbus>; > status = "okay"; > }; > -- > 2.7.4 > -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, Jan 12, 2018 at 2:30 PM, Jagan Teki <jagan@amarulasolutions.com> wrote: > Like axp221, axp223, axp813 the axp803 is also supporting external > regulator to drive the OTG VBus through N_VBUSEN PMIC pin. > > Add support for it. > > Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> > Reviewed-by: Rob Herring <robh@kernel.org> Reviewed-by: Chen-Yu Tsai <wens@csie.org> -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, Jan 12, 2018 at 2:30 PM, Jagan Teki <jagan@amarulasolutions.com> wrote: > Add reg_drivevbus regualtor for boards which are using > external regulator to drive the OTG VBus through N_VBUSEN > PMIC pin. > > Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> Reviewed-by: Chen-Yu Tsai <wens@csie.org> -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/Documentation/devicetree/bindings/mfd/axp20x.txt b/Documentation/devicetree/bindings/mfd/axp20x.txt index 9455503..d1762f3 100644 --- a/Documentation/devicetree/bindings/mfd/axp20x.txt +++ b/Documentation/devicetree/bindings/mfd/axp20x.txt @@ -43,7 +43,7 @@ Optional properties: regulator to drive the OTG VBus, rather then as an input pin which signals whether the board is driving OTG VBus or not. - (axp221 / axp223 / axp813 only) + (axp221 / axp223 / axp803/ axp813 only) - x-powers,master-mode: Boolean (axp806 only). Set this when the PMIC is wired for master mode. The default is slave mode. @@ -132,6 +132,7 @@ FLDO2 : LDO : fldoin-supply : shared supply LDO_IO0 : LDO : ips-supply : GPIO 0 LDO_IO1 : LDO : ips-supply : GPIO 1 RTC_LDO : LDO : ips-supply : always on +DRIVEVBUS : Enable output : drivevbus-supply : external regulator AXP806 regulators, type, and corresponding input supply names: diff --git a/drivers/regulator/axp20x-regulator.c b/drivers/regulator/axp20x-regulator.c index 181622b..91b8ff8 100644 --- a/drivers/regulator/axp20x-regulator.c +++ b/drivers/regulator/axp20x-regulator.c @@ -721,6 +721,8 @@ static int axp20x_regulator_probe(struct platform_device *pdev) case AXP803_ID: regulators = axp803_regulators; nregulators = AXP803_REG_ID_MAX; + drivevbus = of_property_read_bool(pdev->dev.parent->of_node, + "x-powers,drive-vbus-en"); break; case AXP806_ID: regulators = axp806_regulators;