Message ID | 20231010032446.3194-1-linux.amoon@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v1] arm64: dts: amlogic: Used onboard usb hub reset on odroid n2 | expand |
Hi, On 10/10/2023 05:24, Anand Moon wrote: > On Odroid n2/n2+ previously use gpio-hog to reset the usb hub, > switch to used on-board usb hub reset to enable the usb hub > and enable power to hub. > > Signed-off-by: Anand Moon <linux.amoon@gmail.com> > --- > .../dts/amlogic/meson-g12b-odroid-n2.dtsi | 36 ++++++++++++------- > 1 file changed, 24 insertions(+), 12 deletions(-) > > diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi > index 91c9769fda20..9e671444eca6 100644 > --- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi > +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi > @@ -31,6 +31,30 @@ hub_5v: regulator-hub_5v { > enable-active-high; > }; > > + /* USB hub supports both USB 2.0 and USB 3.0 root hub */ > + usb-hub { > + dr_mode = "host"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + /* 2.0 hub on port 1 */ > + hub_2_0: hub@1 { > + compatible = "usb5e3,610"; > + reg = <1>; > + peer-hub = <&hub_3_0>; It seems peer-hub is missing from Documentation/devicetree/bindings/usb/genesys,gl850g.yaml, could you add it ? Thanks, Neil > + vdd-supply = <&usb_pwr_en>; > + }; > + > + /* 3.0 hub on port 4 */ > + hub_3_0: hub@2 { > + compatible = "usb5e3,620"; > + reg = <2>; > + peer-hub = <&hub_2_0>; > + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>; > + vdd-supply = <&vcc_5v>; > + }; > + }; > + > sound { > compatible = "amlogic,axg-sound-card"; > model = "ODROID-N2"; > @@ -234,18 +258,6 @@ &gpio { > "PIN_3", /* GPIOX_17 */ > "PIN_5", /* GPIOX_18 */ > "PIN_36"; /* GPIOX_19 */ > - /* > - * WARNING: The USB Hub on the Odroid-N2 needs a reset signal > - * to be turned high in order to be detected by the USB Controller > - * This signal should be handled by a USB specific power sequence > - * in order to reset the Hub when USB bus is powered down. > - */ > - usb-hub-hog { > - gpio-hog; > - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>; > - output-high; > - line-name = "usb-hub-reset"; > - }; > }; > > &i2c3 {
Hi Neil, On Tue, 10 Oct 2023 at 13:40, Neil Armstrong <neil.armstrong@linaro.org> wrote: > > Hi, > > On 10/10/2023 05:24, Anand Moon wrote: > > On Odroid n2/n2+ previously use gpio-hog to reset the usb hub, > > switch to used on-board usb hub reset to enable the usb hub > > and enable power to hub. > > > > Signed-off-by: Anand Moon <linux.amoon@gmail.com> > > --- > > .../dts/amlogic/meson-g12b-odroid-n2.dtsi | 36 ++++++++++++------- > > 1 file changed, 24 insertions(+), 12 deletions(-) > > > > diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi > > index 91c9769fda20..9e671444eca6 100644 > > --- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi > > +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi > > @@ -31,6 +31,30 @@ hub_5v: regulator-hub_5v { > > enable-active-high; > > }; > > > > + /* USB hub supports both USB 2.0 and USB 3.0 root hub */ > > + usb-hub { > > + dr_mode = "host"; > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + /* 2.0 hub on port 1 */ > > + hub_2_0: hub@1 { > > + compatible = "usb5e3,610"; > > + reg = <1>; > > + peer-hub = <&hub_3_0>; > > It seems peer-hub is missing from Documentation/devicetree/bindings/usb/genesys,gl850g.yaml, could you add it ? > Yes, will add an example in genesys,gl850g.yaml file. > Thanks, > Neil Thanks -Anand
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi index 91c9769fda20..9e671444eca6 100644 --- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi @@ -31,6 +31,30 @@ hub_5v: regulator-hub_5v { enable-active-high; }; + /* USB hub supports both USB 2.0 and USB 3.0 root hub */ + usb-hub { + dr_mode = "host"; + #address-cells = <1>; + #size-cells = <0>; + + /* 2.0 hub on port 1 */ + hub_2_0: hub@1 { + compatible = "usb5e3,610"; + reg = <1>; + peer-hub = <&hub_3_0>; + vdd-supply = <&usb_pwr_en>; + }; + + /* 3.0 hub on port 4 */ + hub_3_0: hub@2 { + compatible = "usb5e3,620"; + reg = <2>; + peer-hub = <&hub_2_0>; + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>; + vdd-supply = <&vcc_5v>; + }; + }; + sound { compatible = "amlogic,axg-sound-card"; model = "ODROID-N2"; @@ -234,18 +258,6 @@ &gpio { "PIN_3", /* GPIOX_17 */ "PIN_5", /* GPIOX_18 */ "PIN_36"; /* GPIOX_19 */ - /* - * WARNING: The USB Hub on the Odroid-N2 needs a reset signal - * to be turned high in order to be detected by the USB Controller - * This signal should be handled by a USB specific power sequence - * in order to reset the Hub when USB bus is powered down. - */ - usb-hub-hog { - gpio-hog; - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>; - output-high; - line-name = "usb-hub-reset"; - }; }; &i2c3 {
On Odroid n2/n2+ previously use gpio-hog to reset the usb hub, switch to used on-board usb hub reset to enable the usb hub and enable power to hub. Signed-off-by: Anand Moon <linux.amoon@gmail.com> --- .../dts/amlogic/meson-g12b-odroid-n2.dtsi | 36 ++++++++++++------- 1 file changed, 24 insertions(+), 12 deletions(-)