* [PATCH v2 0/9] Used onboard HUB to reset and add power to hub
@ 2023-01-18 4:44 Anand Moon
2023-01-18 4:44 ` Anand Moon
` (8 more replies)
0 siblings, 9 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold
Amlogic board use gpio-hog to reset the USB hub.
so using onboard hub we could reset the USB hub and
also enable power to the USB hub.
v2: Odroid C1 / C2 : usb hub reset working as expected.
Odroid N2 : dropped usb hub changes, since my board USB hub
is hitting regression.
Odroid C4 : Fix the device tree binding and used peer-hub for
usb2.0 and usb3.0 hub.
v1: Odroid C1 / C2 : were not working as expected.
Odroid N2 : used single USB 3.0 hub reset.
Odroid C4 : used single USB 3.0 hub reset.
[0] https://patchwork.kernel.org/project/linux-amlogic/list/?series=707292
Any inputs for these changes ?
Thanks
-Anand
Anand Moon (9):
dt-bindings: usb: Add device id for Genesys Logic hub controller
ARM: dts: amlogic: Used onboard usb hub reset to enable usb hub
arm64: dts: amlogic: Used onboard usb hub reset on odroid c2
usb: misc: onboard_usb_hub: add Genesys Logic GL852G hub support
vendor-prefixes: Add VIA Labs, Inc.
dt-bindings: usb: Add binding for Via lab VL817 hub controller
arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
usb: misc: onboard_usb_hub: add VIA LAB VL817 hub support
arm64: defconfig: Enable USB onboard HUB driver
.../bindings/usb/genesys,gl850g.yaml | 1 +
.../devicetree/bindings/usb/vialab,vl817.yaml | 69 +++++++++++++++++++
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
arch/arm/boot/dts/meson8b-odroidc1.dts | 24 +++----
.../boot/dts/amlogic/meson-gxbb-odroidc2.dts | 26 +++----
.../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++----
arch/arm64/configs/defconfig | 1 +
drivers/usb/misc/onboard_usb_hub.c | 4 ++
drivers/usb/misc/onboard_usb_hub.h | 11 +++
9 files changed, 133 insertions(+), 41 deletions(-)
create mode 100644 Documentation/devicetree/bindings/usb/vialab,vl817.yaml
--
2.38.1
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply [flat|nested] 54+ messages in thread
* [PATCH v2 1/9] dt-bindings: usb: Add device id for Genesys Logic hub controller
2023-01-18 4:44 [PATCH v2 0/9] Used onboard HUB to reset and add power to hub Anand Moon
@ 2023-01-18 4:44 ` Anand Moon
2023-01-18 4:44 ` Anand Moon
` (7 subsequent siblings)
8 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski, Icenowy Zheng
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-usb, devicetree, linux-kernel
Add usb hub device id for Genesys Logic, Inc. GL852G Hub USB 2.0
root hub.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2: - drop the vendor name from compatible string.
- drop the -OTG and -QFN76 suffix from commit message.
- drop the GL3523 USB 3.1 root hub device id.
---
Documentation/devicetree/bindings/usb/genesys,gl850g.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/usb/genesys,gl850g.yaml b/Documentation/devicetree/bindings/usb/genesys,gl850g.yaml
index a9f831448cca..cc4cf92b70d1 100644
--- a/Documentation/devicetree/bindings/usb/genesys,gl850g.yaml
+++ b/Documentation/devicetree/bindings/usb/genesys,gl850g.yaml
@@ -16,6 +16,7 @@ properties:
compatible:
enum:
- usb5e3,608
+ - usb5e3,610
reg: true
--
2.38.1
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 1/9] dt-bindings: usb: Add device id for Genesys Logic hub controller
@ 2023-01-18 4:44 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski, Icenowy Zheng
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-usb, devicetree, linux-kernel
Add usb hub device id for Genesys Logic, Inc. GL852G Hub USB 2.0
root hub.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2: - drop the vendor name from compatible string.
- drop the -OTG and -QFN76 suffix from commit message.
- drop the GL3523 USB 3.1 root hub device id.
---
Documentation/devicetree/bindings/usb/genesys,gl850g.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/usb/genesys,gl850g.yaml b/Documentation/devicetree/bindings/usb/genesys,gl850g.yaml
index a9f831448cca..cc4cf92b70d1 100644
--- a/Documentation/devicetree/bindings/usb/genesys,gl850g.yaml
+++ b/Documentation/devicetree/bindings/usb/genesys,gl850g.yaml
@@ -16,6 +16,7 @@ properties:
compatible:
enum:
- usb5e3,608
+ - usb5e3,610
reg: true
--
2.38.1
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 2/9] ARM: dts: amlogic: Used onboard usb hub reset to enable usb hub
2023-01-18 4:44 [PATCH v2 0/9] Used onboard HUB to reset and add power to hub Anand Moon
2023-01-18 4:44 ` Anand Moon
@ 2023-01-18 4:44 ` Anand Moon
2023-01-18 4:44 ` Anand Moon
` (6 subsequent siblings)
8 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On Odroid c1 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 usb hub.
Add usb hub regulator as per the schematic.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2 - drop the vendor name from compatible string.
- move the hub node to USB controller node.
- drop the usb_otg_pwr since it only liked to OTG port
and link p5v0 to the vdd-supply.
---
arch/arm/boot/dts/meson8b-odroidc1.dts | 24 +++++++++++-------------
1 file changed, 11 insertions(+), 13 deletions(-)
diff --git a/arch/arm/boot/dts/meson8b-odroidc1.dts b/arch/arm/boot/dts/meson8b-odroidc1.dts
index 04356bc639fa..d1f9ce4742a8 100644
--- a/arch/arm/boot/dts/meson8b-odroidc1.dts
+++ b/arch/arm/boot/dts/meson8b-odroidc1.dts
@@ -281,19 +281,6 @@ &gpio_ao {
"J7 Header Pin 6", "J7 Header Pin 5",
"J7 Header Pin 7", "HDMI_CEC",
"SYS_LED", "", "";
-
- /*
- * WARNING: The USB Hub on the Odroid-C1/C1+ 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 {
- gpio-hog;
- gpios = <GPIOAO_4 GPIO_ACTIVE_HIGH>;
- output-high;
- line-name = "usb-hub-reset";
- };
};
&ir_receiver {
@@ -381,5 +368,16 @@ &usb1_phy {
};
&usb1 {
+ dr_mode = "host";
+ #address-cells = <1>;
+ #size-cells = <0>;
status = "okay";
+
+ hub@1 {
+ /* Genesys Logic GL852G usb hub */
+ compatible = "usb5e3,610";
+ reg = <1>;
+ vdd-supply = <&p5v0>;
+ reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>;
+ };
};
--
2.38.1
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 2/9] ARM: dts: amlogic: Used onboard usb hub reset to enable usb hub
@ 2023-01-18 4:44 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On Odroid c1 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 usb hub.
Add usb hub regulator as per the schematic.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2 - drop the vendor name from compatible string.
- move the hub node to USB controller node.
- drop the usb_otg_pwr since it only liked to OTG port
and link p5v0 to the vdd-supply.
---
arch/arm/boot/dts/meson8b-odroidc1.dts | 24 +++++++++++-------------
1 file changed, 11 insertions(+), 13 deletions(-)
diff --git a/arch/arm/boot/dts/meson8b-odroidc1.dts b/arch/arm/boot/dts/meson8b-odroidc1.dts
index 04356bc639fa..d1f9ce4742a8 100644
--- a/arch/arm/boot/dts/meson8b-odroidc1.dts
+++ b/arch/arm/boot/dts/meson8b-odroidc1.dts
@@ -281,19 +281,6 @@ &gpio_ao {
"J7 Header Pin 6", "J7 Header Pin 5",
"J7 Header Pin 7", "HDMI_CEC",
"SYS_LED", "", "";
-
- /*
- * WARNING: The USB Hub on the Odroid-C1/C1+ 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 {
- gpio-hog;
- gpios = <GPIOAO_4 GPIO_ACTIVE_HIGH>;
- output-high;
- line-name = "usb-hub-reset";
- };
};
&ir_receiver {
@@ -381,5 +368,16 @@ &usb1_phy {
};
&usb1 {
+ dr_mode = "host";
+ #address-cells = <1>;
+ #size-cells = <0>;
status = "okay";
+
+ hub@1 {
+ /* Genesys Logic GL852G usb hub */
+ compatible = "usb5e3,610";
+ reg = <1>;
+ vdd-supply = <&p5v0>;
+ reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>;
+ };
};
--
2.38.1
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 2/9] ARM: dts: amlogic: Used onboard usb hub reset to enable usb hub
@ 2023-01-18 4:44 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On Odroid c1 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 usb hub.
Add usb hub regulator as per the schematic.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2 - drop the vendor name from compatible string.
- move the hub node to USB controller node.
- drop the usb_otg_pwr since it only liked to OTG port
and link p5v0 to the vdd-supply.
---
arch/arm/boot/dts/meson8b-odroidc1.dts | 24 +++++++++++-------------
1 file changed, 11 insertions(+), 13 deletions(-)
diff --git a/arch/arm/boot/dts/meson8b-odroidc1.dts b/arch/arm/boot/dts/meson8b-odroidc1.dts
index 04356bc639fa..d1f9ce4742a8 100644
--- a/arch/arm/boot/dts/meson8b-odroidc1.dts
+++ b/arch/arm/boot/dts/meson8b-odroidc1.dts
@@ -281,19 +281,6 @@ &gpio_ao {
"J7 Header Pin 6", "J7 Header Pin 5",
"J7 Header Pin 7", "HDMI_CEC",
"SYS_LED", "", "";
-
- /*
- * WARNING: The USB Hub on the Odroid-C1/C1+ 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 {
- gpio-hog;
- gpios = <GPIOAO_4 GPIO_ACTIVE_HIGH>;
- output-high;
- line-name = "usb-hub-reset";
- };
};
&ir_receiver {
@@ -381,5 +368,16 @@ &usb1_phy {
};
&usb1 {
+ dr_mode = "host";
+ #address-cells = <1>;
+ #size-cells = <0>;
status = "okay";
+
+ hub@1 {
+ /* Genesys Logic GL852G usb hub */
+ compatible = "usb5e3,610";
+ reg = <1>;
+ vdd-supply = <&p5v0>;
+ reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>;
+ };
};
--
2.38.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 3/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c2
2023-01-18 4:44 [PATCH v2 0/9] Used onboard HUB to reset and add power to hub Anand Moon
2023-01-18 4:44 ` Anand Moon
@ 2023-01-18 4:44 ` Anand Moon
2023-01-18 4:44 ` Anand Moon
` (6 subsequent siblings)
8 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On Odroid c2 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>
---
v2 - drop the vendor name from compatible string.
- move the hub node to USB controller node.
- drop the usb_otg_pwr since it only liked to OTG port
and link p5v0 to the vdd-supply.
---
.../boot/dts/amlogic/meson-gxbb-odroidc2.dts | 26 ++++++++-----------
1 file changed, 11 insertions(+), 15 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
index 201596247fd9..01356437a077 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
@@ -250,21 +250,6 @@ eth_phy0: ethernet-phy@0 {
};
};
-&gpio_ao {
- /*
- * WARNING: The USB Hub on the Odroid-C2 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.
- */
- hog-0 {
- gpio-hog;
- gpios = <GPIOAO_4 GPIO_ACTIVE_HIGH>;
- output-high;
- line-name = "usb-hub-reset";
- };
-};
-
&hdmi_tx {
status = "okay";
pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
@@ -414,5 +399,16 @@ &usb0 {
};
&usb1 {
+ dr_mode = "host";
+ #address-cells = <1>;
+ #size-cells = <0>;
status = "okay";
+
+ hub@1 {
+ /* Genesys Logic GL852G USB 2.0 hub */
+ compatible = "usb5e3,610";
+ reg = <1>;
+ vdd-supply = <&p5v0>;
+ reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>;
+ };
};
--
2.38.1
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 3/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c2
@ 2023-01-18 4:44 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On Odroid c2 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>
---
v2 - drop the vendor name from compatible string.
- move the hub node to USB controller node.
- drop the usb_otg_pwr since it only liked to OTG port
and link p5v0 to the vdd-supply.
---
.../boot/dts/amlogic/meson-gxbb-odroidc2.dts | 26 ++++++++-----------
1 file changed, 11 insertions(+), 15 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
index 201596247fd9..01356437a077 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
@@ -250,21 +250,6 @@ eth_phy0: ethernet-phy@0 {
};
};
-&gpio_ao {
- /*
- * WARNING: The USB Hub on the Odroid-C2 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.
- */
- hog-0 {
- gpio-hog;
- gpios = <GPIOAO_4 GPIO_ACTIVE_HIGH>;
- output-high;
- line-name = "usb-hub-reset";
- };
-};
-
&hdmi_tx {
status = "okay";
pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
@@ -414,5 +399,16 @@ &usb0 {
};
&usb1 {
+ dr_mode = "host";
+ #address-cells = <1>;
+ #size-cells = <0>;
status = "okay";
+
+ hub@1 {
+ /* Genesys Logic GL852G USB 2.0 hub */
+ compatible = "usb5e3,610";
+ reg = <1>;
+ vdd-supply = <&p5v0>;
+ reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>;
+ };
};
--
2.38.1
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 3/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c2
@ 2023-01-18 4:44 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On Odroid c2 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>
---
v2 - drop the vendor name from compatible string.
- move the hub node to USB controller node.
- drop the usb_otg_pwr since it only liked to OTG port
and link p5v0 to the vdd-supply.
---
.../boot/dts/amlogic/meson-gxbb-odroidc2.dts | 26 ++++++++-----------
1 file changed, 11 insertions(+), 15 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
index 201596247fd9..01356437a077 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
@@ -250,21 +250,6 @@ eth_phy0: ethernet-phy@0 {
};
};
-&gpio_ao {
- /*
- * WARNING: The USB Hub on the Odroid-C2 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.
- */
- hog-0 {
- gpio-hog;
- gpios = <GPIOAO_4 GPIO_ACTIVE_HIGH>;
- output-high;
- line-name = "usb-hub-reset";
- };
-};
-
&hdmi_tx {
status = "okay";
pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
@@ -414,5 +399,16 @@ &usb0 {
};
&usb1 {
+ dr_mode = "host";
+ #address-cells = <1>;
+ #size-cells = <0>;
status = "okay";
+
+ hub@1 {
+ /* Genesys Logic GL852G USB 2.0 hub */
+ compatible = "usb5e3,610";
+ reg = <1>;
+ vdd-supply = <&p5v0>;
+ reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>;
+ };
};
--
2.38.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 4/9] usb: misc: onboard_usb_hub: add Genesys Logic GL852G hub support
2023-01-18 4:44 [PATCH v2 0/9] Used onboard HUB to reset and add power to hub Anand Moon
@ 2023-01-18 4:44 ` Anand Moon
2023-01-18 4:44 ` Anand Moon
` (7 subsequent siblings)
8 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Matthias Kaehlcke, Greg Kroah-Hartman
Cc: linux-amlogic, Alexander Stein, Johan Hovold, linux-usb, linux-kernel
Genesys Logic GL852G is a 4-port USB 2.0 STT hub that has a reset pin to
toggle and a 5.0V core supply exported though an integrated LDO is
available for powering it.
Add the support for this hub, for controlling the reset pin and the core
power supply.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2: - fix the compatible string
- drop the -OHG suffix from commit message.
- Add reset delay.
---
drivers/usb/misc/onboard_usb_hub.c | 1 +
drivers/usb/misc/onboard_usb_hub.h | 5 +++++
2 files changed, 6 insertions(+)
diff --git a/drivers/usb/misc/onboard_usb_hub.c b/drivers/usb/misc/onboard_usb_hub.c
index 94e7966e199d..9bf59792fb94 100644
--- a/drivers/usb/misc/onboard_usb_hub.c
+++ b/drivers/usb/misc/onboard_usb_hub.c
@@ -409,6 +409,7 @@ static void onboard_hub_usbdev_disconnect(struct usb_device *udev)
static const struct usb_device_id onboard_hub_id_table[] = {
{ USB_DEVICE(VENDOR_ID_GENESYS, 0x0608) }, /* Genesys Logic GL850G USB 2.0 */
+ { USB_DEVICE(VENDOR_ID_GENESYS, 0x0610) }, /* Genesys Logic GL852G USB 2.0 */
{ USB_DEVICE(VENDOR_ID_MICROCHIP, 0x2514) }, /* USB2514B USB 2.0 */
{ USB_DEVICE(VENDOR_ID_REALTEK, 0x0411) }, /* RTS5411 USB 3.1 */
{ USB_DEVICE(VENDOR_ID_REALTEK, 0x5411) }, /* RTS5411 USB 2.1 */
diff --git a/drivers/usb/misc/onboard_usb_hub.h b/drivers/usb/misc/onboard_usb_hub.h
index 62129a6a1ba5..163fc07abf25 100644
--- a/drivers/usb/misc/onboard_usb_hub.h
+++ b/drivers/usb/misc/onboard_usb_hub.h
@@ -26,11 +26,16 @@ static const struct onboard_hub_pdata genesys_gl850g_data = {
.reset_us = 3,
};
+static const struct onboard_hub_pdata genesys_gl852g_data = {
+ .reset_us = 50,
+};
+
static const struct of_device_id onboard_hub_match[] = {
{ .compatible = "usb424,2514", .data = µchip_usb424_data, },
{ .compatible = "usb451,8140", .data = &ti_tusb8041_data, },
{ .compatible = "usb451,8142", .data = &ti_tusb8041_data, },
{ .compatible = "usb5e3,608", .data = &genesys_gl850g_data, },
+ { .compatible = "usb5e3,610", .data = &genesys_gl852g_data, },
{ .compatible = "usbbda,411", .data = &realtek_rts5411_data, },
{ .compatible = "usbbda,5411", .data = &realtek_rts5411_data, },
{ .compatible = "usbbda,414", .data = &realtek_rts5411_data, },
--
2.38.1
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 4/9] usb: misc: onboard_usb_hub: add Genesys Logic GL852G hub support
@ 2023-01-18 4:44 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Matthias Kaehlcke, Greg Kroah-Hartman
Cc: linux-amlogic, Alexander Stein, Johan Hovold, linux-usb, linux-kernel
Genesys Logic GL852G is a 4-port USB 2.0 STT hub that has a reset pin to
toggle and a 5.0V core supply exported though an integrated LDO is
available for powering it.
Add the support for this hub, for controlling the reset pin and the core
power supply.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2: - fix the compatible string
- drop the -OHG suffix from commit message.
- Add reset delay.
---
drivers/usb/misc/onboard_usb_hub.c | 1 +
drivers/usb/misc/onboard_usb_hub.h | 5 +++++
2 files changed, 6 insertions(+)
diff --git a/drivers/usb/misc/onboard_usb_hub.c b/drivers/usb/misc/onboard_usb_hub.c
index 94e7966e199d..9bf59792fb94 100644
--- a/drivers/usb/misc/onboard_usb_hub.c
+++ b/drivers/usb/misc/onboard_usb_hub.c
@@ -409,6 +409,7 @@ static void onboard_hub_usbdev_disconnect(struct usb_device *udev)
static const struct usb_device_id onboard_hub_id_table[] = {
{ USB_DEVICE(VENDOR_ID_GENESYS, 0x0608) }, /* Genesys Logic GL850G USB 2.0 */
+ { USB_DEVICE(VENDOR_ID_GENESYS, 0x0610) }, /* Genesys Logic GL852G USB 2.0 */
{ USB_DEVICE(VENDOR_ID_MICROCHIP, 0x2514) }, /* USB2514B USB 2.0 */
{ USB_DEVICE(VENDOR_ID_REALTEK, 0x0411) }, /* RTS5411 USB 3.1 */
{ USB_DEVICE(VENDOR_ID_REALTEK, 0x5411) }, /* RTS5411 USB 2.1 */
diff --git a/drivers/usb/misc/onboard_usb_hub.h b/drivers/usb/misc/onboard_usb_hub.h
index 62129a6a1ba5..163fc07abf25 100644
--- a/drivers/usb/misc/onboard_usb_hub.h
+++ b/drivers/usb/misc/onboard_usb_hub.h
@@ -26,11 +26,16 @@ static const struct onboard_hub_pdata genesys_gl850g_data = {
.reset_us = 3,
};
+static const struct onboard_hub_pdata genesys_gl852g_data = {
+ .reset_us = 50,
+};
+
static const struct of_device_id onboard_hub_match[] = {
{ .compatible = "usb424,2514", .data = µchip_usb424_data, },
{ .compatible = "usb451,8140", .data = &ti_tusb8041_data, },
{ .compatible = "usb451,8142", .data = &ti_tusb8041_data, },
{ .compatible = "usb5e3,608", .data = &genesys_gl850g_data, },
+ { .compatible = "usb5e3,610", .data = &genesys_gl852g_data, },
{ .compatible = "usbbda,411", .data = &realtek_rts5411_data, },
{ .compatible = "usbbda,5411", .data = &realtek_rts5411_data, },
{ .compatible = "usbbda,414", .data = &realtek_rts5411_data, },
--
2.38.1
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 5/9] vendor-prefixes: Add VIA Labs, Inc.
2023-01-18 4:44 [PATCH v2 0/9] Used onboard HUB to reset and add power to hub Anand Moon
@ 2023-01-18 4:44 ` Anand Moon
2023-01-18 4:44 ` Anand Moon
` (7 subsequent siblings)
8 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
Krzysztof Kozlowski, Rob Herring, devicetree, linux-kernel
Add the vendor prefix for VIA Labs, Inc. (VLI) is a supplier
of USB and USB Power Delivery controllers for multi-functional devices
and platforms.
Website: https://www.via-labs.com/
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
V2: - drop Drop marketing, so without "leading".
- add Ack of Krzysztof
---
Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
index 70ffb3780621..d19b7f9cef4c 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -1398,6 +1398,8 @@ patternProperties:
description: Vertexcom Technologies, Inc.
"^via,.*":
description: VIA Technologies, Inc.
+ "^vialab,.*":
+ description: VIA Labs, Inc.
"^vicor,.*":
description: Vicor Corporation
"^videostrong,.*":
--
2.38.1
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 5/9] vendor-prefixes: Add VIA Labs, Inc.
@ 2023-01-18 4:44 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
Krzysztof Kozlowski, Rob Herring, devicetree, linux-kernel
Add the vendor prefix for VIA Labs, Inc. (VLI) is a supplier
of USB and USB Power Delivery controllers for multi-functional devices
and platforms.
Website: https://www.via-labs.com/
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
V2: - drop Drop marketing, so without "leading".
- add Ack of Krzysztof
---
Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
index 70ffb3780621..d19b7f9cef4c 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -1398,6 +1398,8 @@ patternProperties:
description: Vertexcom Technologies, Inc.
"^via,.*":
description: VIA Technologies, Inc.
+ "^vialab,.*":
+ description: VIA Labs, Inc.
"^vicor,.*":
description: Vicor Corporation
"^videostrong,.*":
--
2.38.1
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 6/9] dt-bindings: usb: Add binding for Via lab VL817 hub controller
2023-01-18 4:44 [PATCH v2 0/9] Used onboard HUB to reset and add power to hub Anand Moon
@ 2023-01-18 4:44 ` Anand Moon
2023-01-18 4:44 ` Anand Moon
` (7 subsequent siblings)
8 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-usb, devicetree, linux-kernel
The VIA Lab VL817 is a USB 3.1 Gen 1 hub and USB 2.0 hub
controller that features 4 downstream ports and 1 otg, with
an internal 5V regulator and has external reset pin.
Add a device tree binding for its USB protocol part.
The internal LDO is not covered by this and can just be modelled
as a fixed regulator.
Add combo of USB 2.0 and USB 3.0 root hub using peer-hub.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2 - fix the compatible string and fix the $id
- update the commit message.
- update the example for use peer-hub node because it
combo of USB 2.0 and USB 3.0 hub.
- rename the yaml file from vialab,vl817q7.yaml to vialab,vl817.yaml
as q7 suffix is ued for USB 3.1 and q5 suffix is used for USB 2.0.
---
.../devicetree/bindings/usb/vialab,vl817.yaml | 69 +++++++++++++++++++
1 file changed, 69 insertions(+)
create mode 100644 Documentation/devicetree/bindings/usb/vialab,vl817.yaml
diff --git a/Documentation/devicetree/bindings/usb/vialab,vl817.yaml b/Documentation/devicetree/bindings/usb/vialab,vl817.yaml
new file mode 100644
index 000000000000..5f9771e22058
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/vialab,vl817.yaml
@@ -0,0 +1,69 @@
+# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/usb/vialab,vl817.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Via labs VL817 USB 3.1 hub controller
+
+maintainers:
+ - Anand Moon <linux.amoon@gmail.com>
+
+allOf:
+ - $ref: usb-device.yaml#
+
+properties:
+ compatible:
+ items:
+ - enum:
+ - usb2109,2817
+ - usb2109,817
+
+ reg: true
+
+ reset-gpios:
+ description: GPIO controlling the RESET# pin.
+
+ vdd-supply:
+ description:
+ phandle to the regulator that provides power to the hub.
+
+ peer-hub:
+ $ref: '/schemas/types.yaml#/definitions/phandle'
+ description:
+ phandle to the peer hub on the controller.
+
+required:
+ - peer-hub
+ - compatible
+ - reg
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+
+ usb {
+ dr_mode = "host";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ /* 2.0 hub on port 1 */
+ hub_2_0: hub@1 {
+ compatible = "usb2109,2817";
+ reg = <1>;
+ vdd-supply = <&vcc_5v>;
+ peer-hub = <&hub_3_0>;
+ reset-gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
+ };
+
+ /* 3.1 hub on port 4 */
+ hub_3_0: hub@2 {
+ compatible = "usb2109,817";
+ reg = <2>;
+ vdd-supply = <&vcc_5v>;
+ peer-hub = <&hub_2_0>;
+ reset-gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
+ };
+ };
--
2.38.1
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 6/9] dt-bindings: usb: Add binding for Via lab VL817 hub controller
@ 2023-01-18 4:44 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-usb, devicetree, linux-kernel
The VIA Lab VL817 is a USB 3.1 Gen 1 hub and USB 2.0 hub
controller that features 4 downstream ports and 1 otg, with
an internal 5V regulator and has external reset pin.
Add a device tree binding for its USB protocol part.
The internal LDO is not covered by this and can just be modelled
as a fixed regulator.
Add combo of USB 2.0 and USB 3.0 root hub using peer-hub.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2 - fix the compatible string and fix the $id
- update the commit message.
- update the example for use peer-hub node because it
combo of USB 2.0 and USB 3.0 hub.
- rename the yaml file from vialab,vl817q7.yaml to vialab,vl817.yaml
as q7 suffix is ued for USB 3.1 and q5 suffix is used for USB 2.0.
---
.../devicetree/bindings/usb/vialab,vl817.yaml | 69 +++++++++++++++++++
1 file changed, 69 insertions(+)
create mode 100644 Documentation/devicetree/bindings/usb/vialab,vl817.yaml
diff --git a/Documentation/devicetree/bindings/usb/vialab,vl817.yaml b/Documentation/devicetree/bindings/usb/vialab,vl817.yaml
new file mode 100644
index 000000000000..5f9771e22058
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/vialab,vl817.yaml
@@ -0,0 +1,69 @@
+# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/usb/vialab,vl817.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Via labs VL817 USB 3.1 hub controller
+
+maintainers:
+ - Anand Moon <linux.amoon@gmail.com>
+
+allOf:
+ - $ref: usb-device.yaml#
+
+properties:
+ compatible:
+ items:
+ - enum:
+ - usb2109,2817
+ - usb2109,817
+
+ reg: true
+
+ reset-gpios:
+ description: GPIO controlling the RESET# pin.
+
+ vdd-supply:
+ description:
+ phandle to the regulator that provides power to the hub.
+
+ peer-hub:
+ $ref: '/schemas/types.yaml#/definitions/phandle'
+ description:
+ phandle to the peer hub on the controller.
+
+required:
+ - peer-hub
+ - compatible
+ - reg
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+
+ usb {
+ dr_mode = "host";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ /* 2.0 hub on port 1 */
+ hub_2_0: hub@1 {
+ compatible = "usb2109,2817";
+ reg = <1>;
+ vdd-supply = <&vcc_5v>;
+ peer-hub = <&hub_3_0>;
+ reset-gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
+ };
+
+ /* 3.1 hub on port 4 */
+ hub_3_0: hub@2 {
+ compatible = "usb2109,817";
+ reg = <2>;
+ vdd-supply = <&vcc_5v>;
+ peer-hub = <&hub_2_0>;
+ reset-gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
+ };
+ };
--
2.38.1
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
2023-01-18 4:44 [PATCH v2 0/9] Used onboard HUB to reset and add power to hub Anand Moon
2023-01-18 4:44 ` Anand Moon
@ 2023-01-18 4:44 ` Anand Moon
2023-01-18 4:44 ` Anand Moon
` (6 subsequent siblings)
8 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On Odroid c4 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.
USB hub is combination of USB 2.0 and USB 3.0 root hub so
use peer-hub node to link then.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2: - fix the compatible string.
- Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
---
.../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
1 file changed, 23 insertions(+), 13 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
index 8c30ce63686e..d04768a66bfe 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
@@ -26,20 +26,30 @@ led-blue {
sound {
model = "ODROID-C4";
};
-};
-&gpio {
- /*
- * WARNING: The USB Hub on the Odroid-C4 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.
- */
- hog-0 {
- gpio-hog;
- gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
- output-high;
- line-name = "usb-hub-reset";
+ /* 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 = "usb2109,2817";
+ reg = <1>;
+ peer-hub = <&hub_3_0>;
+ reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
+ vdd-supply = <&vcc_5v>;
+ };
+
+ /* 3.1 hub on port 4 */
+ hub_3_0: hub@2 {
+ compatible = "usb2109,817";
+ reg = <2>;
+ peer-hub = <&hub_2_0>;
+ reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
+ vdd-supply = <&vcc_5v>;
+ };
};
};
--
2.38.1
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
@ 2023-01-18 4:44 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On Odroid c4 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.
USB hub is combination of USB 2.0 and USB 3.0 root hub so
use peer-hub node to link then.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2: - fix the compatible string.
- Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
---
.../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
1 file changed, 23 insertions(+), 13 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
index 8c30ce63686e..d04768a66bfe 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
@@ -26,20 +26,30 @@ led-blue {
sound {
model = "ODROID-C4";
};
-};
-&gpio {
- /*
- * WARNING: The USB Hub on the Odroid-C4 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.
- */
- hog-0 {
- gpio-hog;
- gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
- output-high;
- line-name = "usb-hub-reset";
+ /* 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 = "usb2109,2817";
+ reg = <1>;
+ peer-hub = <&hub_3_0>;
+ reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
+ vdd-supply = <&vcc_5v>;
+ };
+
+ /* 3.1 hub on port 4 */
+ hub_3_0: hub@2 {
+ compatible = "usb2109,817";
+ reg = <2>;
+ peer-hub = <&hub_2_0>;
+ reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
+ vdd-supply = <&vcc_5v>;
+ };
};
};
--
2.38.1
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
@ 2023-01-18 4:44 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On Odroid c4 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.
USB hub is combination of USB 2.0 and USB 3.0 root hub so
use peer-hub node to link then.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2: - fix the compatible string.
- Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
---
.../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
1 file changed, 23 insertions(+), 13 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
index 8c30ce63686e..d04768a66bfe 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
@@ -26,20 +26,30 @@ led-blue {
sound {
model = "ODROID-C4";
};
-};
-&gpio {
- /*
- * WARNING: The USB Hub on the Odroid-C4 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.
- */
- hog-0 {
- gpio-hog;
- gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
- output-high;
- line-name = "usb-hub-reset";
+ /* 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 = "usb2109,2817";
+ reg = <1>;
+ peer-hub = <&hub_3_0>;
+ reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
+ vdd-supply = <&vcc_5v>;
+ };
+
+ /* 3.1 hub on port 4 */
+ hub_3_0: hub@2 {
+ compatible = "usb2109,817";
+ reg = <2>;
+ peer-hub = <&hub_2_0>;
+ reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
+ vdd-supply = <&vcc_5v>;
+ };
};
};
--
2.38.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 8/9] usb: misc: onboard_usb_hub: add VIA LAB VL817 hub support
2023-01-18 4:44 [PATCH v2 0/9] Used onboard HUB to reset and add power to hub Anand Moon
@ 2023-01-18 4:44 ` Anand Moon
2023-01-18 4:44 ` Anand Moon
` (7 subsequent siblings)
8 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Matthias Kaehlcke, Greg Kroah-Hartman
Cc: linux-amlogic, Alexander Stein, Johan Hovold, linux-usb, linux-kernel
VIA LAB VL817 is a 4-port USB 3.1 hub and USB 2.0 root hub
that has a reset pin to toggle and a 5.0V core supply exported
though an integrated LDO is available for powering it.
Add the support for this hub, for controlling the reset pin and
the core power supply.
Add USB device id's for USB 2.0 and USB 3.0 root hub.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2 - fix the compatible string and update the commit message
- update the USB device id for USB 3.0 and USB 2.0 root hub.
---
drivers/usb/misc/onboard_usb_hub.c | 3 +++
drivers/usb/misc/onboard_usb_hub.h | 6 ++++++
2 files changed, 9 insertions(+)
diff --git a/drivers/usb/misc/onboard_usb_hub.c b/drivers/usb/misc/onboard_usb_hub.c
index 9bf59792fb94..945d4e7125ea 100644
--- a/drivers/usb/misc/onboard_usb_hub.c
+++ b/drivers/usb/misc/onboard_usb_hub.c
@@ -335,6 +335,7 @@ static struct platform_driver onboard_hub_driver = {
#define VENDOR_ID_MICROCHIP 0x0424
#define VENDOR_ID_REALTEK 0x0bda
#define VENDOR_ID_TI 0x0451
+#define VENDOR_ID_VIA 0x2109
/*
* Returns the onboard_hub platform device that is associated with the USB
@@ -417,6 +418,8 @@ static const struct usb_device_id onboard_hub_id_table[] = {
{ USB_DEVICE(VENDOR_ID_REALTEK, 0x5414) }, /* RTS5414 USB 2.1 */
{ USB_DEVICE(VENDOR_ID_TI, 0x8140) }, /* TI USB8041 3.0 */
{ USB_DEVICE(VENDOR_ID_TI, 0x8142) }, /* TI USB8041 2.0 */
+ { USB_DEVICE(VENDOR_ID_VIA, 0x0817) }, /* VIA VL817 3.1 */
+ { USB_DEVICE(VENDOR_ID_VIA, 0x2817) }, /* VIA VL817 2.0 */
{}
};
MODULE_DEVICE_TABLE(usb, onboard_hub_id_table);
diff --git a/drivers/usb/misc/onboard_usb_hub.h b/drivers/usb/misc/onboard_usb_hub.h
index 163fc07abf25..0a943a154649 100644
--- a/drivers/usb/misc/onboard_usb_hub.h
+++ b/drivers/usb/misc/onboard_usb_hub.h
@@ -30,6 +30,10 @@ static const struct onboard_hub_pdata genesys_gl852g_data = {
.reset_us = 50,
};
+static const struct onboard_hub_pdata vialab_vl817_data = {
+ .reset_us = 10,
+};
+
static const struct of_device_id onboard_hub_match[] = {
{ .compatible = "usb424,2514", .data = µchip_usb424_data, },
{ .compatible = "usb451,8140", .data = &ti_tusb8041_data, },
@@ -40,6 +44,8 @@ static const struct of_device_id onboard_hub_match[] = {
{ .compatible = "usbbda,5411", .data = &realtek_rts5411_data, },
{ .compatible = "usbbda,414", .data = &realtek_rts5411_data, },
{ .compatible = "usbbda,5414", .data = &realtek_rts5411_data, },
+ { .compatible = "usb2109,817", .data = &vialab_vl817_data, },
+ { .compatible = "usb2109,2817", .data = &vialab_vl817_data, },
{}
};
--
2.38.1
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 8/9] usb: misc: onboard_usb_hub: add VIA LAB VL817 hub support
@ 2023-01-18 4:44 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Matthias Kaehlcke, Greg Kroah-Hartman
Cc: linux-amlogic, Alexander Stein, Johan Hovold, linux-usb, linux-kernel
VIA LAB VL817 is a 4-port USB 3.1 hub and USB 2.0 root hub
that has a reset pin to toggle and a 5.0V core supply exported
though an integrated LDO is available for powering it.
Add the support for this hub, for controlling the reset pin and
the core power supply.
Add USB device id's for USB 2.0 and USB 3.0 root hub.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2 - fix the compatible string and update the commit message
- update the USB device id for USB 3.0 and USB 2.0 root hub.
---
drivers/usb/misc/onboard_usb_hub.c | 3 +++
drivers/usb/misc/onboard_usb_hub.h | 6 ++++++
2 files changed, 9 insertions(+)
diff --git a/drivers/usb/misc/onboard_usb_hub.c b/drivers/usb/misc/onboard_usb_hub.c
index 9bf59792fb94..945d4e7125ea 100644
--- a/drivers/usb/misc/onboard_usb_hub.c
+++ b/drivers/usb/misc/onboard_usb_hub.c
@@ -335,6 +335,7 @@ static struct platform_driver onboard_hub_driver = {
#define VENDOR_ID_MICROCHIP 0x0424
#define VENDOR_ID_REALTEK 0x0bda
#define VENDOR_ID_TI 0x0451
+#define VENDOR_ID_VIA 0x2109
/*
* Returns the onboard_hub platform device that is associated with the USB
@@ -417,6 +418,8 @@ static const struct usb_device_id onboard_hub_id_table[] = {
{ USB_DEVICE(VENDOR_ID_REALTEK, 0x5414) }, /* RTS5414 USB 2.1 */
{ USB_DEVICE(VENDOR_ID_TI, 0x8140) }, /* TI USB8041 3.0 */
{ USB_DEVICE(VENDOR_ID_TI, 0x8142) }, /* TI USB8041 2.0 */
+ { USB_DEVICE(VENDOR_ID_VIA, 0x0817) }, /* VIA VL817 3.1 */
+ { USB_DEVICE(VENDOR_ID_VIA, 0x2817) }, /* VIA VL817 2.0 */
{}
};
MODULE_DEVICE_TABLE(usb, onboard_hub_id_table);
diff --git a/drivers/usb/misc/onboard_usb_hub.h b/drivers/usb/misc/onboard_usb_hub.h
index 163fc07abf25..0a943a154649 100644
--- a/drivers/usb/misc/onboard_usb_hub.h
+++ b/drivers/usb/misc/onboard_usb_hub.h
@@ -30,6 +30,10 @@ static const struct onboard_hub_pdata genesys_gl852g_data = {
.reset_us = 50,
};
+static const struct onboard_hub_pdata vialab_vl817_data = {
+ .reset_us = 10,
+};
+
static const struct of_device_id onboard_hub_match[] = {
{ .compatible = "usb424,2514", .data = µchip_usb424_data, },
{ .compatible = "usb451,8140", .data = &ti_tusb8041_data, },
@@ -40,6 +44,8 @@ static const struct of_device_id onboard_hub_match[] = {
{ .compatible = "usbbda,5411", .data = &realtek_rts5411_data, },
{ .compatible = "usbbda,414", .data = &realtek_rts5411_data, },
{ .compatible = "usbbda,5414", .data = &realtek_rts5411_data, },
+ { .compatible = "usb2109,817", .data = &vialab_vl817_data, },
+ { .compatible = "usb2109,2817", .data = &vialab_vl817_data, },
{}
};
--
2.38.1
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 9/9] arm64: defconfig: Enable USB onboard HUB driver
2023-01-18 4:44 [PATCH v2 0/9] Used onboard HUB to reset and add power to hub Anand Moon
2023-01-18 4:44 ` Anand Moon
@ 2023-01-18 4:44 ` Anand Moon
2023-01-18 4:44 ` Anand Moon
` (6 subsequent siblings)
8 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Catalin Marinas, Will Deacon
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-arm-kernel, linux-kernel
Enable the USB onboard HUB driver, used on Amlogic boards.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2: - none
---
arch/arm64/configs/defconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index 851e8f9be06d..42c3528a2473 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -923,6 +923,7 @@ CONFIG_USB_SERIAL_CP210X=m
CONFIG_USB_SERIAL_FTDI_SIO=m
CONFIG_USB_SERIAL_OPTION=m
CONFIG_USB_HSIC_USB3503=y
+CONFIG_USB_ONBOARD_HUB=m
CONFIG_NOP_USB_XCEIV=y
CONFIG_USB_GADGET=y
CONFIG_USB_RENESAS_USBHS_UDC=m
--
2.38.1
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 9/9] arm64: defconfig: Enable USB onboard HUB driver
@ 2023-01-18 4:44 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Catalin Marinas, Will Deacon
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-arm-kernel, linux-kernel
Enable the USB onboard HUB driver, used on Amlogic boards.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2: - none
---
arch/arm64/configs/defconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index 851e8f9be06d..42c3528a2473 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -923,6 +923,7 @@ CONFIG_USB_SERIAL_CP210X=m
CONFIG_USB_SERIAL_FTDI_SIO=m
CONFIG_USB_SERIAL_OPTION=m
CONFIG_USB_HSIC_USB3503=y
+CONFIG_USB_ONBOARD_HUB=m
CONFIG_NOP_USB_XCEIV=y
CONFIG_USB_GADGET=y
CONFIG_USB_RENESAS_USBHS_UDC=m
--
2.38.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 54+ messages in thread
* [PATCH v2 9/9] arm64: defconfig: Enable USB onboard HUB driver
@ 2023-01-18 4:44 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 4:44 UTC (permalink / raw)
To: Catalin Marinas, Will Deacon
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-arm-kernel, linux-kernel
Enable the USB onboard HUB driver, used on Amlogic boards.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
v2: - none
---
arch/arm64/configs/defconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index 851e8f9be06d..42c3528a2473 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -923,6 +923,7 @@ CONFIG_USB_SERIAL_CP210X=m
CONFIG_USB_SERIAL_FTDI_SIO=m
CONFIG_USB_SERIAL_OPTION=m
CONFIG_USB_HSIC_USB3503=y
+CONFIG_USB_ONBOARD_HUB=m
CONFIG_NOP_USB_XCEIV=y
CONFIG_USB_GADGET=y
CONFIG_USB_RENESAS_USBHS_UDC=m
--
2.38.1
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply related [flat|nested] 54+ messages in thread
* Re: [PATCH v2 1/9] dt-bindings: usb: Add device id for Genesys Logic hub controller
2023-01-18 4:44 ` Anand Moon
@ 2023-01-18 8:17 ` Krzysztof Kozlowski
-1 siblings, 0 replies; 54+ messages in thread
From: Krzysztof Kozlowski @ 2023-01-18 8:17 UTC (permalink / raw)
To: Anand Moon, Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
Icenowy Zheng
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-usb, devicetree, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> Add usb hub device id for Genesys Logic, Inc. GL852G Hub USB 2.0
> root hub.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> v2: - drop the vendor name from compatible string.
> - drop the -OTG and -QFN76 suffix from commit message.
> - drop the GL3523 USB 3.1 root hub device id.
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 1/9] dt-bindings: usb: Add device id for Genesys Logic hub controller
@ 2023-01-18 8:17 ` Krzysztof Kozlowski
0 siblings, 0 replies; 54+ messages in thread
From: Krzysztof Kozlowski @ 2023-01-18 8:17 UTC (permalink / raw)
To: Anand Moon, Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
Icenowy Zheng
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-usb, devicetree, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> Add usb hub device id for Genesys Logic, Inc. GL852G Hub USB 2.0
> root hub.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> v2: - drop the vendor name from compatible string.
> - drop the -OTG and -QFN76 suffix from commit message.
> - drop the GL3523 USB 3.1 root hub device id.
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 6/9] dt-bindings: usb: Add binding for Via lab VL817 hub controller
2023-01-18 4:44 ` Anand Moon
@ 2023-01-18 8:19 ` Krzysztof Kozlowski
-1 siblings, 0 replies; 54+ messages in thread
From: Krzysztof Kozlowski @ 2023-01-18 8:19 UTC (permalink / raw)
To: Anand Moon, Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-usb, devicetree, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> The VIA Lab VL817 is a USB 3.1 Gen 1 hub and USB 2.0 hub
> controller that features 4 downstream ports and 1 otg, with
> an internal 5V regulator and has external reset pin.
Subject: drop second/last, redundant "binding for". The "dt-bindings"
prefix is already stating that these are bindings.
>
> Add a device tree binding for its USB protocol part.
> The internal LDO is not covered by this and can just be modelled
> as a fixed regulator.
>
> Add combo of USB 2.0 and USB 3.0 root hub using peer-hub.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> v2 - fix the compatible string and fix the $id
> - update the commit message.
> - update the example for use peer-hub node because it
> combo of USB 2.0 and USB 3.0 hub.
> - rename the yaml file from vialab,vl817q7.yaml to vialab,vl817.yaml
> as q7 suffix is ued for USB 3.1 and q5 suffix is used for USB 2.0.
> ---
> .../devicetree/bindings/usb/vialab,vl817.yaml | 69 +++++++++++++++++++
> 1 file changed, 69 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/usb/vialab,vl817.yaml
>
> diff --git a/Documentation/devicetree/bindings/usb/vialab,vl817.yaml b/Documentation/devicetree/bindings/usb/vialab,vl817.yaml
> new file mode 100644
> index 000000000000..5f9771e22058
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/usb/vialab,vl817.yaml
> @@ -0,0 +1,69 @@
> +# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/usb/vialab,vl817.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Via labs VL817 USB 3.1 hub controller
> +
> +maintainers:
> + - Anand Moon <linux.amoon@gmail.com>
> +
> +allOf:
> + - $ref: usb-device.yaml#
> +
> +properties:
> + compatible:
> + items:
Drop items
> + - enum:
> + - usb2109,2817
> + - usb2109,817
> +
> + reg: true
> +
> + reset-gpios:
> + description: GPIO controlling the RESET# pin.
maxItems
> +
> + vdd-supply:
> + description:
> + phandle to the regulator that provides power to the hub.
> +
> + peer-hub:
> + $ref: '/schemas/types.yaml#/definitions/phandle'
Drop quotes
> + description:
> + phandle to the peer hub on the controller.
> +
> +required:
> + - peer-hub
> + - compatible
> + - reg
Keep same order as in properties: part.
> +
Best regards,
Krzysztof
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 6/9] dt-bindings: usb: Add binding for Via lab VL817 hub controller
@ 2023-01-18 8:19 ` Krzysztof Kozlowski
0 siblings, 0 replies; 54+ messages in thread
From: Krzysztof Kozlowski @ 2023-01-18 8:19 UTC (permalink / raw)
To: Anand Moon, Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-usb, devicetree, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> The VIA Lab VL817 is a USB 3.1 Gen 1 hub and USB 2.0 hub
> controller that features 4 downstream ports and 1 otg, with
> an internal 5V regulator and has external reset pin.
Subject: drop second/last, redundant "binding for". The "dt-bindings"
prefix is already stating that these are bindings.
>
> Add a device tree binding for its USB protocol part.
> The internal LDO is not covered by this and can just be modelled
> as a fixed regulator.
>
> Add combo of USB 2.0 and USB 3.0 root hub using peer-hub.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> v2 - fix the compatible string and fix the $id
> - update the commit message.
> - update the example for use peer-hub node because it
> combo of USB 2.0 and USB 3.0 hub.
> - rename the yaml file from vialab,vl817q7.yaml to vialab,vl817.yaml
> as q7 suffix is ued for USB 3.1 and q5 suffix is used for USB 2.0.
> ---
> .../devicetree/bindings/usb/vialab,vl817.yaml | 69 +++++++++++++++++++
> 1 file changed, 69 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/usb/vialab,vl817.yaml
>
> diff --git a/Documentation/devicetree/bindings/usb/vialab,vl817.yaml b/Documentation/devicetree/bindings/usb/vialab,vl817.yaml
> new file mode 100644
> index 000000000000..5f9771e22058
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/usb/vialab,vl817.yaml
> @@ -0,0 +1,69 @@
> +# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/usb/vialab,vl817.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Via labs VL817 USB 3.1 hub controller
> +
> +maintainers:
> + - Anand Moon <linux.amoon@gmail.com>
> +
> +allOf:
> + - $ref: usb-device.yaml#
> +
> +properties:
> + compatible:
> + items:
Drop items
> + - enum:
> + - usb2109,2817
> + - usb2109,817
> +
> + reg: true
> +
> + reset-gpios:
> + description: GPIO controlling the RESET# pin.
maxItems
> +
> + vdd-supply:
> + description:
> + phandle to the regulator that provides power to the hub.
> +
> + peer-hub:
> + $ref: '/schemas/types.yaml#/definitions/phandle'
Drop quotes
> + description:
> + phandle to the peer hub on the controller.
> +
> +required:
> + - peer-hub
> + - compatible
> + - reg
Keep same order as in properties: part.
> +
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 2/9] ARM: dts: amlogic: Used onboard usb hub reset to enable usb hub
2023-01-18 4:44 ` Anand Moon
(?)
@ 2023-01-18 8:26 ` Neil Armstrong
-1 siblings, 0 replies; 54+ messages in thread
From: Neil Armstrong @ 2023-01-18 8:26 UTC (permalink / raw)
To: Anand Moon, Rob Herring, Krzysztof Kozlowski, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> On Odroid c1 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 usb hub.
>
> Add usb hub regulator as per the schematic.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> v2 - drop the vendor name from compatible string.
> - move the hub node to USB controller node.
> - drop the usb_otg_pwr since it only liked to OTG port
> and link p5v0 to the vdd-supply.
> ---
> arch/arm/boot/dts/meson8b-odroidc1.dts | 24 +++++++++++-------------
> 1 file changed, 11 insertions(+), 13 deletions(-)
>
> diff --git a/arch/arm/boot/dts/meson8b-odroidc1.dts b/arch/arm/boot/dts/meson8b-odroidc1.dts
> index 04356bc639fa..d1f9ce4742a8 100644
> --- a/arch/arm/boot/dts/meson8b-odroidc1.dts
> +++ b/arch/arm/boot/dts/meson8b-odroidc1.dts
> @@ -281,19 +281,6 @@ &gpio_ao {
> "J7 Header Pin 6", "J7 Header Pin 5",
> "J7 Header Pin 7", "HDMI_CEC",
> "SYS_LED", "", "";
> -
> - /*
> - * WARNING: The USB Hub on the Odroid-C1/C1+ 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 {
> - gpio-hog;
> - gpios = <GPIOAO_4 GPIO_ACTIVE_HIGH>;
> - output-high;
> - line-name = "usb-hub-reset";
> - };
> };
>
> &ir_receiver {
> @@ -381,5 +368,16 @@ &usb1_phy {
> };
>
> &usb1 {
> + dr_mode = "host";
> + #address-cells = <1>;
> + #size-cells = <0>;
> status = "okay";
> +
> + hub@1 {
> + /* Genesys Logic GL852G usb hub */
> + compatible = "usb5e3,610";
> + reg = <1>;
> + vdd-supply = <&p5v0>;
> + reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>;
> + };
> };
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 2/9] ARM: dts: amlogic: Used onboard usb hub reset to enable usb hub
@ 2023-01-18 8:26 ` Neil Armstrong
0 siblings, 0 replies; 54+ messages in thread
From: Neil Armstrong @ 2023-01-18 8:26 UTC (permalink / raw)
To: Anand Moon, Rob Herring, Krzysztof Kozlowski, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> On Odroid c1 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 usb hub.
>
> Add usb hub regulator as per the schematic.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> v2 - drop the vendor name from compatible string.
> - move the hub node to USB controller node.
> - drop the usb_otg_pwr since it only liked to OTG port
> and link p5v0 to the vdd-supply.
> ---
> arch/arm/boot/dts/meson8b-odroidc1.dts | 24 +++++++++++-------------
> 1 file changed, 11 insertions(+), 13 deletions(-)
>
> diff --git a/arch/arm/boot/dts/meson8b-odroidc1.dts b/arch/arm/boot/dts/meson8b-odroidc1.dts
> index 04356bc639fa..d1f9ce4742a8 100644
> --- a/arch/arm/boot/dts/meson8b-odroidc1.dts
> +++ b/arch/arm/boot/dts/meson8b-odroidc1.dts
> @@ -281,19 +281,6 @@ &gpio_ao {
> "J7 Header Pin 6", "J7 Header Pin 5",
> "J7 Header Pin 7", "HDMI_CEC",
> "SYS_LED", "", "";
> -
> - /*
> - * WARNING: The USB Hub on the Odroid-C1/C1+ 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 {
> - gpio-hog;
> - gpios = <GPIOAO_4 GPIO_ACTIVE_HIGH>;
> - output-high;
> - line-name = "usb-hub-reset";
> - };
> };
>
> &ir_receiver {
> @@ -381,5 +368,16 @@ &usb1_phy {
> };
>
> &usb1 {
> + dr_mode = "host";
> + #address-cells = <1>;
> + #size-cells = <0>;
> status = "okay";
> +
> + hub@1 {
> + /* Genesys Logic GL852G usb hub */
> + compatible = "usb5e3,610";
> + reg = <1>;
> + vdd-supply = <&p5v0>;
> + reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>;
> + };
> };
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 2/9] ARM: dts: amlogic: Used onboard usb hub reset to enable usb hub
@ 2023-01-18 8:26 ` Neil Armstrong
0 siblings, 0 replies; 54+ messages in thread
From: Neil Armstrong @ 2023-01-18 8:26 UTC (permalink / raw)
To: Anand Moon, Rob Herring, Krzysztof Kozlowski, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> On Odroid c1 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 usb hub.
>
> Add usb hub regulator as per the schematic.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> v2 - drop the vendor name from compatible string.
> - move the hub node to USB controller node.
> - drop the usb_otg_pwr since it only liked to OTG port
> and link p5v0 to the vdd-supply.
> ---
> arch/arm/boot/dts/meson8b-odroidc1.dts | 24 +++++++++++-------------
> 1 file changed, 11 insertions(+), 13 deletions(-)
>
> diff --git a/arch/arm/boot/dts/meson8b-odroidc1.dts b/arch/arm/boot/dts/meson8b-odroidc1.dts
> index 04356bc639fa..d1f9ce4742a8 100644
> --- a/arch/arm/boot/dts/meson8b-odroidc1.dts
> +++ b/arch/arm/boot/dts/meson8b-odroidc1.dts
> @@ -281,19 +281,6 @@ &gpio_ao {
> "J7 Header Pin 6", "J7 Header Pin 5",
> "J7 Header Pin 7", "HDMI_CEC",
> "SYS_LED", "", "";
> -
> - /*
> - * WARNING: The USB Hub on the Odroid-C1/C1+ 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 {
> - gpio-hog;
> - gpios = <GPIOAO_4 GPIO_ACTIVE_HIGH>;
> - output-high;
> - line-name = "usb-hub-reset";
> - };
> };
>
> &ir_receiver {
> @@ -381,5 +368,16 @@ &usb1_phy {
> };
>
> &usb1 {
> + dr_mode = "host";
> + #address-cells = <1>;
> + #size-cells = <0>;
> status = "okay";
> +
> + hub@1 {
> + /* Genesys Logic GL852G usb hub */
> + compatible = "usb5e3,610";
> + reg = <1>;
> + vdd-supply = <&p5v0>;
> + reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>;
> + };
> };
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 3/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c2
2023-01-18 4:44 ` Anand Moon
(?)
@ 2023-01-18 8:27 ` Neil Armstrong
-1 siblings, 0 replies; 54+ messages in thread
From: Neil Armstrong @ 2023-01-18 8:27 UTC (permalink / raw)
To: Anand Moon, Rob Herring, Krzysztof Kozlowski, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> On Odroid c2 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>
> ---
> v2 - drop the vendor name from compatible string.
> - move the hub node to USB controller node.
> - drop the usb_otg_pwr since it only liked to OTG port
> and link p5v0 to the vdd-supply.
> ---
> .../boot/dts/amlogic/meson-gxbb-odroidc2.dts | 26 ++++++++-----------
> 1 file changed, 11 insertions(+), 15 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
> index 201596247fd9..01356437a077 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
> @@ -250,21 +250,6 @@ eth_phy0: ethernet-phy@0 {
> };
> };
>
> -&gpio_ao {
> - /*
> - * WARNING: The USB Hub on the Odroid-C2 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.
> - */
> - hog-0 {
> - gpio-hog;
> - gpios = <GPIOAO_4 GPIO_ACTIVE_HIGH>;
> - output-high;
> - line-name = "usb-hub-reset";
> - };
> -};
> -
> &hdmi_tx {
> status = "okay";
> pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
> @@ -414,5 +399,16 @@ &usb0 {
> };
>
> &usb1 {
> + dr_mode = "host";
> + #address-cells = <1>;
> + #size-cells = <0>;
> status = "okay";
> +
> + hub@1 {
> + /* Genesys Logic GL852G USB 2.0 hub */
> + compatible = "usb5e3,610";
> + reg = <1>;
> + vdd-supply = <&p5v0>;
> + reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>;
> + };
> };
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 3/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c2
@ 2023-01-18 8:27 ` Neil Armstrong
0 siblings, 0 replies; 54+ messages in thread
From: Neil Armstrong @ 2023-01-18 8:27 UTC (permalink / raw)
To: Anand Moon, Rob Herring, Krzysztof Kozlowski, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> On Odroid c2 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>
> ---
> v2 - drop the vendor name from compatible string.
> - move the hub node to USB controller node.
> - drop the usb_otg_pwr since it only liked to OTG port
> and link p5v0 to the vdd-supply.
> ---
> .../boot/dts/amlogic/meson-gxbb-odroidc2.dts | 26 ++++++++-----------
> 1 file changed, 11 insertions(+), 15 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
> index 201596247fd9..01356437a077 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
> @@ -250,21 +250,6 @@ eth_phy0: ethernet-phy@0 {
> };
> };
>
> -&gpio_ao {
> - /*
> - * WARNING: The USB Hub on the Odroid-C2 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.
> - */
> - hog-0 {
> - gpio-hog;
> - gpios = <GPIOAO_4 GPIO_ACTIVE_HIGH>;
> - output-high;
> - line-name = "usb-hub-reset";
> - };
> -};
> -
> &hdmi_tx {
> status = "okay";
> pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
> @@ -414,5 +399,16 @@ &usb0 {
> };
>
> &usb1 {
> + dr_mode = "host";
> + #address-cells = <1>;
> + #size-cells = <0>;
> status = "okay";
> +
> + hub@1 {
> + /* Genesys Logic GL852G USB 2.0 hub */
> + compatible = "usb5e3,610";
> + reg = <1>;
> + vdd-supply = <&p5v0>;
> + reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>;
> + };
> };
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 3/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c2
@ 2023-01-18 8:27 ` Neil Armstrong
0 siblings, 0 replies; 54+ messages in thread
From: Neil Armstrong @ 2023-01-18 8:27 UTC (permalink / raw)
To: Anand Moon, Rob Herring, Krzysztof Kozlowski, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> On Odroid c2 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>
> ---
> v2 - drop the vendor name from compatible string.
> - move the hub node to USB controller node.
> - drop the usb_otg_pwr since it only liked to OTG port
> and link p5v0 to the vdd-supply.
> ---
> .../boot/dts/amlogic/meson-gxbb-odroidc2.dts | 26 ++++++++-----------
> 1 file changed, 11 insertions(+), 15 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
> index 201596247fd9..01356437a077 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
> @@ -250,21 +250,6 @@ eth_phy0: ethernet-phy@0 {
> };
> };
>
> -&gpio_ao {
> - /*
> - * WARNING: The USB Hub on the Odroid-C2 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.
> - */
> - hog-0 {
> - gpio-hog;
> - gpios = <GPIOAO_4 GPIO_ACTIVE_HIGH>;
> - output-high;
> - line-name = "usb-hub-reset";
> - };
> -};
> -
> &hdmi_tx {
> status = "okay";
> pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
> @@ -414,5 +399,16 @@ &usb0 {
> };
>
> &usb1 {
> + dr_mode = "host";
> + #address-cells = <1>;
> + #size-cells = <0>;
> status = "okay";
> +
> + hub@1 {
> + /* Genesys Logic GL852G USB 2.0 hub */
> + compatible = "usb5e3,610";
> + reg = <1>;
> + vdd-supply = <&p5v0>;
> + reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>;
> + };
> };
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
2023-01-18 4:44 ` Anand Moon
(?)
@ 2023-01-18 8:29 ` Neil Armstrong
-1 siblings, 0 replies; 54+ messages in thread
From: Neil Armstrong @ 2023-01-18 8:29 UTC (permalink / raw)
To: Anand Moon, Rob Herring, Krzysztof Kozlowski, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> On Odroid c4 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.
>
> USB hub is combination of USB 2.0 and USB 3.0 root hub so
> use peer-hub node to link then.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> v2: - fix the compatible string.
> - Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
> ---
> .../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
> 1 file changed, 23 insertions(+), 13 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> index 8c30ce63686e..d04768a66bfe 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> @@ -26,20 +26,30 @@ led-blue {
> sound {
> model = "ODROID-C4";
> };
> -};
>
> -&gpio {
> - /*
> - * WARNING: The USB Hub on the Odroid-C4 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.
> - */
> - hog-0 {
> - gpio-hog;
> - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
> - output-high;
> - line-name = "usb-hub-reset";
> + /* USB hub supports both USB 2.0 and USB 3.0 root hub */
> + usb-hub {
> + dr_mode = "host";
Is this really needed ?
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + /* 2.0 hub on port 1 */
> + hub_2_0: hub@1 {
> + compatible = "usb2109,2817";
> + reg = <1>;
> + peer-hub = <&hub_3_0>;
> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> + vdd-supply = <&vcc_5v>;
> + };
> +
> + /* 3.1 hub on port 4 */
> + hub_3_0: hub@2 {
> + compatible = "usb2109,817";
> + reg = <2>;
> + peer-hub = <&hub_2_0>;
> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> + vdd-supply = <&vcc_5v>;
> + };
The final discussion in v1 was to drop this /usb-hub node and move the
hub_2_0 & hub_3_0 node under the dwc3 node.
Neil
> };
> };
>
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
@ 2023-01-18 8:29 ` Neil Armstrong
0 siblings, 0 replies; 54+ messages in thread
From: Neil Armstrong @ 2023-01-18 8:29 UTC (permalink / raw)
To: Anand Moon, Rob Herring, Krzysztof Kozlowski, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> On Odroid c4 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.
>
> USB hub is combination of USB 2.0 and USB 3.0 root hub so
> use peer-hub node to link then.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> v2: - fix the compatible string.
> - Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
> ---
> .../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
> 1 file changed, 23 insertions(+), 13 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> index 8c30ce63686e..d04768a66bfe 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> @@ -26,20 +26,30 @@ led-blue {
> sound {
> model = "ODROID-C4";
> };
> -};
>
> -&gpio {
> - /*
> - * WARNING: The USB Hub on the Odroid-C4 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.
> - */
> - hog-0 {
> - gpio-hog;
> - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
> - output-high;
> - line-name = "usb-hub-reset";
> + /* USB hub supports both USB 2.0 and USB 3.0 root hub */
> + usb-hub {
> + dr_mode = "host";
Is this really needed ?
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + /* 2.0 hub on port 1 */
> + hub_2_0: hub@1 {
> + compatible = "usb2109,2817";
> + reg = <1>;
> + peer-hub = <&hub_3_0>;
> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> + vdd-supply = <&vcc_5v>;
> + };
> +
> + /* 3.1 hub on port 4 */
> + hub_3_0: hub@2 {
> + compatible = "usb2109,817";
> + reg = <2>;
> + peer-hub = <&hub_2_0>;
> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> + vdd-supply = <&vcc_5v>;
> + };
The final discussion in v1 was to drop this /usb-hub node and move the
hub_2_0 & hub_3_0 node under the dwc3 node.
Neil
> };
> };
>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
@ 2023-01-18 8:29 ` Neil Armstrong
0 siblings, 0 replies; 54+ messages in thread
From: Neil Armstrong @ 2023-01-18 8:29 UTC (permalink / raw)
To: Anand Moon, Rob Herring, Krzysztof Kozlowski, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
devicetree, linux-arm-kernel, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> On Odroid c4 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.
>
> USB hub is combination of USB 2.0 and USB 3.0 root hub so
> use peer-hub node to link then.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> v2: - fix the compatible string.
> - Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
> ---
> .../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
> 1 file changed, 23 insertions(+), 13 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> index 8c30ce63686e..d04768a66bfe 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> @@ -26,20 +26,30 @@ led-blue {
> sound {
> model = "ODROID-C4";
> };
> -};
>
> -&gpio {
> - /*
> - * WARNING: The USB Hub on the Odroid-C4 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.
> - */
> - hog-0 {
> - gpio-hog;
> - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
> - output-high;
> - line-name = "usb-hub-reset";
> + /* USB hub supports both USB 2.0 and USB 3.0 root hub */
> + usb-hub {
> + dr_mode = "host";
Is this really needed ?
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + /* 2.0 hub on port 1 */
> + hub_2_0: hub@1 {
> + compatible = "usb2109,2817";
> + reg = <1>;
> + peer-hub = <&hub_3_0>;
> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> + vdd-supply = <&vcc_5v>;
> + };
> +
> + /* 3.1 hub on port 4 */
> + hub_3_0: hub@2 {
> + compatible = "usb2109,817";
> + reg = <2>;
> + peer-hub = <&hub_2_0>;
> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> + vdd-supply = <&vcc_5v>;
> + };
The final discussion in v1 was to drop this /usb-hub node and move the
hub_2_0 & hub_3_0 node under the dwc3 node.
Neil
> };
> };
>
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 9/9] arm64: defconfig: Enable USB onboard HUB driver
2023-01-18 4:44 ` Anand Moon
(?)
@ 2023-01-18 8:29 ` Neil Armstrong
-1 siblings, 0 replies; 54+ messages in thread
From: Neil Armstrong @ 2023-01-18 8:29 UTC (permalink / raw)
To: Anand Moon, Catalin Marinas, Will Deacon
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-arm-kernel, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> Enable the USB onboard HUB driver, used on Amlogic boards.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> v2: - none
> ---
> arch/arm64/configs/defconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
> index 851e8f9be06d..42c3528a2473 100644
> --- a/arch/arm64/configs/defconfig
> +++ b/arch/arm64/configs/defconfig
> @@ -923,6 +923,7 @@ CONFIG_USB_SERIAL_CP210X=m
> CONFIG_USB_SERIAL_FTDI_SIO=m
> CONFIG_USB_SERIAL_OPTION=m
> CONFIG_USB_HSIC_USB3503=y
> +CONFIG_USB_ONBOARD_HUB=m
> CONFIG_NOP_USB_XCEIV=y
> CONFIG_USB_GADGET=y
> CONFIG_USB_RENESAS_USBHS_UDC=m
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 9/9] arm64: defconfig: Enable USB onboard HUB driver
@ 2023-01-18 8:29 ` Neil Armstrong
0 siblings, 0 replies; 54+ messages in thread
From: Neil Armstrong @ 2023-01-18 8:29 UTC (permalink / raw)
To: Anand Moon, Catalin Marinas, Will Deacon
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-arm-kernel, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> Enable the USB onboard HUB driver, used on Amlogic boards.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> v2: - none
> ---
> arch/arm64/configs/defconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
> index 851e8f9be06d..42c3528a2473 100644
> --- a/arch/arm64/configs/defconfig
> +++ b/arch/arm64/configs/defconfig
> @@ -923,6 +923,7 @@ CONFIG_USB_SERIAL_CP210X=m
> CONFIG_USB_SERIAL_FTDI_SIO=m
> CONFIG_USB_SERIAL_OPTION=m
> CONFIG_USB_HSIC_USB3503=y
> +CONFIG_USB_ONBOARD_HUB=m
> CONFIG_NOP_USB_XCEIV=y
> CONFIG_USB_GADGET=y
> CONFIG_USB_RENESAS_USBHS_UDC=m
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 9/9] arm64: defconfig: Enable USB onboard HUB driver
@ 2023-01-18 8:29 ` Neil Armstrong
0 siblings, 0 replies; 54+ messages in thread
From: Neil Armstrong @ 2023-01-18 8:29 UTC (permalink / raw)
To: Anand Moon, Catalin Marinas, Will Deacon
Cc: linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-arm-kernel, linux-kernel
On 18/01/2023 05:44, Anand Moon wrote:
> Enable the USB onboard HUB driver, used on Amlogic boards.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> v2: - none
> ---
> arch/arm64/configs/defconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
> index 851e8f9be06d..42c3528a2473 100644
> --- a/arch/arm64/configs/defconfig
> +++ b/arch/arm64/configs/defconfig
> @@ -923,6 +923,7 @@ CONFIG_USB_SERIAL_CP210X=m
> CONFIG_USB_SERIAL_FTDI_SIO=m
> CONFIG_USB_SERIAL_OPTION=m
> CONFIG_USB_HSIC_USB3503=y
> +CONFIG_USB_ONBOARD_HUB=m
> CONFIG_NOP_USB_XCEIV=y
> CONFIG_USB_GADGET=y
> CONFIG_USB_RENESAS_USBHS_UDC=m
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
2023-01-18 8:29 ` Neil Armstrong
(?)
@ 2023-01-18 11:55 ` Anand Moon
-1 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 11:55 UTC (permalink / raw)
To: neil.armstrong
Cc: Rob Herring, Krzysztof Kozlowski, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, linux-amlogic, Matthias Kaehlcke,
Alexander Stein, Johan Hovold, devicetree, linux-arm-kernel,
linux-kernel
Hi Neil,
Thanks for your review comments.
On Wed, 18 Jan 2023 at 13:59, Neil Armstrong <neil.armstrong@linaro.org> wrote:
>
> On 18/01/2023 05:44, Anand Moon wrote:
> > On Odroid c4 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.
> >
> > USB hub is combination of USB 2.0 and USB 3.0 root hub so
> > use peer-hub node to link then.
> >
> > Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> > ---
> > v2: - fix the compatible string.
> > - Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
> > ---
> > .../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
> > 1 file changed, 23 insertions(+), 13 deletions(-)
> >
> > diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> > index 8c30ce63686e..d04768a66bfe 100644
> > --- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> > +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> > @@ -26,20 +26,30 @@ led-blue {
> > sound {
> > model = "ODROID-C4";
> > };
> > -};
> >
> > -&gpio {
> > - /*
> > - * WARNING: The USB Hub on the Odroid-C4 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.
> > - */
> > - hog-0 {
> > - gpio-hog;
> > - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
> > - output-high;
> > - line-name = "usb-hub-reset";
> > + /* USB hub supports both USB 2.0 and USB 3.0 root hub */
> > + usb-hub {
> > + dr_mode = "host";
>
> Is this really needed ?
>
I got carried forward from the other device tree binding,
If not needed I will drop this.
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > +
> > + /* 2.0 hub on port 1 */
> > + hub_2_0: hub@1 {
> > + compatible = "usb2109,2817";
> > + reg = <1>;
> > + peer-hub = <&hub_3_0>;
> > + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> > + vdd-supply = <&vcc_5v>;
> > + };
> > +
> > + /* 3.1 hub on port 4 */
> > + hub_3_0: hub@2 {
> > + compatible = "usb2109,817";
> > + reg = <2>;
> > + peer-hub = <&hub_2_0>;
> > + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> > + vdd-supply = <&vcc_5v>;
> > + };
>
> The final discussion in v1 was to drop this /usb-hub node and move the
> hub_2_0 & hub_3_0 node under the dwc3 node.
>
Yes, but It did not work back then, since these are two different events
USB node will try to bring the PHY and dwc2 and dwc2 nodes up.
USB hub supports the reset of the USB hub and links the power supply
to the ports.
This works on this board.
> Neil
>
Thanks
-Anand
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
@ 2023-01-18 11:55 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 11:55 UTC (permalink / raw)
To: neil.armstrong
Cc: Rob Herring, Krzysztof Kozlowski, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, linux-amlogic, Matthias Kaehlcke,
Alexander Stein, Johan Hovold, devicetree, linux-arm-kernel,
linux-kernel
Hi Neil,
Thanks for your review comments.
On Wed, 18 Jan 2023 at 13:59, Neil Armstrong <neil.armstrong@linaro.org> wrote:
>
> On 18/01/2023 05:44, Anand Moon wrote:
> > On Odroid c4 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.
> >
> > USB hub is combination of USB 2.0 and USB 3.0 root hub so
> > use peer-hub node to link then.
> >
> > Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> > ---
> > v2: - fix the compatible string.
> > - Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
> > ---
> > .../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
> > 1 file changed, 23 insertions(+), 13 deletions(-)
> >
> > diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> > index 8c30ce63686e..d04768a66bfe 100644
> > --- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> > +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> > @@ -26,20 +26,30 @@ led-blue {
> > sound {
> > model = "ODROID-C4";
> > };
> > -};
> >
> > -&gpio {
> > - /*
> > - * WARNING: The USB Hub on the Odroid-C4 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.
> > - */
> > - hog-0 {
> > - gpio-hog;
> > - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
> > - output-high;
> > - line-name = "usb-hub-reset";
> > + /* USB hub supports both USB 2.0 and USB 3.0 root hub */
> > + usb-hub {
> > + dr_mode = "host";
>
> Is this really needed ?
>
I got carried forward from the other device tree binding,
If not needed I will drop this.
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > +
> > + /* 2.0 hub on port 1 */
> > + hub_2_0: hub@1 {
> > + compatible = "usb2109,2817";
> > + reg = <1>;
> > + peer-hub = <&hub_3_0>;
> > + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> > + vdd-supply = <&vcc_5v>;
> > + };
> > +
> > + /* 3.1 hub on port 4 */
> > + hub_3_0: hub@2 {
> > + compatible = "usb2109,817";
> > + reg = <2>;
> > + peer-hub = <&hub_2_0>;
> > + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> > + vdd-supply = <&vcc_5v>;
> > + };
>
> The final discussion in v1 was to drop this /usb-hub node and move the
> hub_2_0 & hub_3_0 node under the dwc3 node.
>
Yes, but It did not work back then, since these are two different events
USB node will try to bring the PHY and dwc2 and dwc2 nodes up.
USB hub supports the reset of the USB hub and links the power supply
to the ports.
This works on this board.
> Neil
>
Thanks
-Anand
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
@ 2023-01-18 11:55 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 11:55 UTC (permalink / raw)
To: neil.armstrong
Cc: Rob Herring, Krzysztof Kozlowski, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, linux-amlogic, Matthias Kaehlcke,
Alexander Stein, Johan Hovold, devicetree, linux-arm-kernel,
linux-kernel
Hi Neil,
Thanks for your review comments.
On Wed, 18 Jan 2023 at 13:59, Neil Armstrong <neil.armstrong@linaro.org> wrote:
>
> On 18/01/2023 05:44, Anand Moon wrote:
> > On Odroid c4 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.
> >
> > USB hub is combination of USB 2.0 and USB 3.0 root hub so
> > use peer-hub node to link then.
> >
> > Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> > ---
> > v2: - fix the compatible string.
> > - Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
> > ---
> > .../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
> > 1 file changed, 23 insertions(+), 13 deletions(-)
> >
> > diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> > index 8c30ce63686e..d04768a66bfe 100644
> > --- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> > +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> > @@ -26,20 +26,30 @@ led-blue {
> > sound {
> > model = "ODROID-C4";
> > };
> > -};
> >
> > -&gpio {
> > - /*
> > - * WARNING: The USB Hub on the Odroid-C4 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.
> > - */
> > - hog-0 {
> > - gpio-hog;
> > - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
> > - output-high;
> > - line-name = "usb-hub-reset";
> > + /* USB hub supports both USB 2.0 and USB 3.0 root hub */
> > + usb-hub {
> > + dr_mode = "host";
>
> Is this really needed ?
>
I got carried forward from the other device tree binding,
If not needed I will drop this.
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > +
> > + /* 2.0 hub on port 1 */
> > + hub_2_0: hub@1 {
> > + compatible = "usb2109,2817";
> > + reg = <1>;
> > + peer-hub = <&hub_3_0>;
> > + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> > + vdd-supply = <&vcc_5v>;
> > + };
> > +
> > + /* 3.1 hub on port 4 */
> > + hub_3_0: hub@2 {
> > + compatible = "usb2109,817";
> > + reg = <2>;
> > + peer-hub = <&hub_2_0>;
> > + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> > + vdd-supply = <&vcc_5v>;
> > + };
>
> The final discussion in v1 was to drop this /usb-hub node and move the
> hub_2_0 & hub_3_0 node under the dwc3 node.
>
Yes, but It did not work back then, since these are two different events
USB node will try to bring the PHY and dwc2 and dwc2 nodes up.
USB hub supports the reset of the USB hub and links the power supply
to the ports.
This works on this board.
> Neil
>
Thanks
-Anand
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 6/9] dt-bindings: usb: Add binding for Via lab VL817 hub controller
2023-01-18 8:19 ` Krzysztof Kozlowski
@ 2023-01-18 11:55 ` Anand Moon
-1 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 11:55 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-usb, devicetree, linux-kernel
Hi Krzysztof,
Thanks for your review comments.
On Wed, 18 Jan 2023 at 13:49, Krzysztof Kozlowski
<krzysztof.kozlowski@linaro.org> wrote:
>
> On 18/01/2023 05:44, Anand Moon wrote:
> > The VIA Lab VL817 is a USB 3.1 Gen 1 hub and USB 2.0 hub
> > controller that features 4 downstream ports and 1 otg, with
> > an internal 5V regulator and has external reset pin.
>
> Subject: drop second/last, redundant "binding for". The "dt-bindings"
> prefix is already stating that these are bindings.
>
Ok
> >
> > Add a device tree binding for its USB protocol part.
> > The internal LDO is not covered by this and can just be modelled
> > as a fixed regulator.
> >
> > Add combo of USB 2.0 and USB 3.0 root hub using peer-hub.
> >
> > Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> > ---
> > v2 - fix the compatible string and fix the $id
> > - update the commit message.
> > - update the example for use peer-hub node because it
> > combo of USB 2.0 and USB 3.0 hub.
> > - rename the yaml file from vialab,vl817q7.yaml to vialab,vl817.yaml
> > as q7 suffix is ued for USB 3.1 and q5 suffix is used for USB 2.0.
> > ---
> > .../devicetree/bindings/usb/vialab,vl817.yaml | 69 +++++++++++++++++++
> > 1 file changed, 69 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/usb/vialab,vl817.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/usb/vialab,vl817.yaml b/Documentation/devicetree/bindings/usb/vialab,vl817.yaml
> > new file mode 100644
> > index 000000000000..5f9771e22058
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/usb/vialab,vl817.yaml
> > @@ -0,0 +1,69 @@
> > +# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/usb/vialab,vl817.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Via labs VL817 USB 3.1 hub controller
> > +
> > +maintainers:
> > + - Anand Moon <linux.amoon@gmail.com>
> > +
> > +allOf:
> > + - $ref: usb-device.yaml#
> > +
> > +properties:
> > + compatible:
> > + items:
>
> Drop items
>
Ok,
> > + - enum:
> > + - usb2109,2817
> > + - usb2109,817
> > +
> > + reg: true
> > +
> > + reset-gpios:
> > + description: GPIO controlling the RESET# pin.
>
> maxItems
>
Ok,
> > +
> > + vdd-supply:
> > + description:
> > + phandle to the regulator that provides power to the hub.
> > +
> > + peer-hub:
> > + $ref: '/schemas/types.yaml#/definitions/phandle'
>
> Drop quotes
>
Ok,
> > + description:
> > + phandle to the peer hub on the controller.
> > +
> > +required:
> > + - peer-hub
> > + - compatible
> > + - reg
>
> Keep same order as in properties: part.
>
Ok
> > +
>
> Best regards,
> Krzysztof
>
I will update these in the next version.
-Anand
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 6/9] dt-bindings: usb: Add binding for Via lab VL817 hub controller
@ 2023-01-18 11:55 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-18 11:55 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
linux-amlogic, Matthias Kaehlcke, Alexander Stein, Johan Hovold,
linux-usb, devicetree, linux-kernel
Hi Krzysztof,
Thanks for your review comments.
On Wed, 18 Jan 2023 at 13:49, Krzysztof Kozlowski
<krzysztof.kozlowski@linaro.org> wrote:
>
> On 18/01/2023 05:44, Anand Moon wrote:
> > The VIA Lab VL817 is a USB 3.1 Gen 1 hub and USB 2.0 hub
> > controller that features 4 downstream ports and 1 otg, with
> > an internal 5V regulator and has external reset pin.
>
> Subject: drop second/last, redundant "binding for". The "dt-bindings"
> prefix is already stating that these are bindings.
>
Ok
> >
> > Add a device tree binding for its USB protocol part.
> > The internal LDO is not covered by this and can just be modelled
> > as a fixed regulator.
> >
> > Add combo of USB 2.0 and USB 3.0 root hub using peer-hub.
> >
> > Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> > ---
> > v2 - fix the compatible string and fix the $id
> > - update the commit message.
> > - update the example for use peer-hub node because it
> > combo of USB 2.0 and USB 3.0 hub.
> > - rename the yaml file from vialab,vl817q7.yaml to vialab,vl817.yaml
> > as q7 suffix is ued for USB 3.1 and q5 suffix is used for USB 2.0.
> > ---
> > .../devicetree/bindings/usb/vialab,vl817.yaml | 69 +++++++++++++++++++
> > 1 file changed, 69 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/usb/vialab,vl817.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/usb/vialab,vl817.yaml b/Documentation/devicetree/bindings/usb/vialab,vl817.yaml
> > new file mode 100644
> > index 000000000000..5f9771e22058
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/usb/vialab,vl817.yaml
> > @@ -0,0 +1,69 @@
> > +# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/usb/vialab,vl817.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Via labs VL817 USB 3.1 hub controller
> > +
> > +maintainers:
> > + - Anand Moon <linux.amoon@gmail.com>
> > +
> > +allOf:
> > + - $ref: usb-device.yaml#
> > +
> > +properties:
> > + compatible:
> > + items:
>
> Drop items
>
Ok,
> > + - enum:
> > + - usb2109,2817
> > + - usb2109,817
> > +
> > + reg: true
> > +
> > + reset-gpios:
> > + description: GPIO controlling the RESET# pin.
>
> maxItems
>
Ok,
> > +
> > + vdd-supply:
> > + description:
> > + phandle to the regulator that provides power to the hub.
> > +
> > + peer-hub:
> > + $ref: '/schemas/types.yaml#/definitions/phandle'
>
> Drop quotes
>
Ok,
> > + description:
> > + phandle to the peer hub on the controller.
> > +
> > +required:
> > + - peer-hub
> > + - compatible
> > + - reg
>
> Keep same order as in properties: part.
>
Ok
> > +
>
> Best regards,
> Krzysztof
>
I will update these in the next version.
-Anand
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
2023-01-18 11:55 ` Anand Moon
(?)
@ 2023-01-18 13:24 ` neil.armstrong
-1 siblings, 0 replies; 54+ messages in thread
From: neil.armstrong @ 2023-01-18 13:24 UTC (permalink / raw)
To: Anand Moon
Cc: Rob Herring, Krzysztof Kozlowski, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, linux-amlogic, Matthias Kaehlcke,
Alexander Stein, Johan Hovold, devicetree, linux-arm-kernel,
linux-kernel
On 18/01/2023 12:55, Anand Moon wrote:
> Hi Neil,
>
> Thanks for your review comments.
>
> On Wed, 18 Jan 2023 at 13:59, Neil Armstrong <neil.armstrong@linaro.org> wrote:
>>
>> On 18/01/2023 05:44, Anand Moon wrote:
>>> On Odroid c4 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.
>>>
>>> USB hub is combination of USB 2.0 and USB 3.0 root hub so
>>> use peer-hub node to link then.
>>>
>>> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
>>> ---
>>> v2: - fix the compatible string.
>>> - Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
>>> ---
>>> .../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
>>> 1 file changed, 23 insertions(+), 13 deletions(-)
>>>
>>> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
>>> index 8c30ce63686e..d04768a66bfe 100644
>>> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
>>> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
>>> @@ -26,20 +26,30 @@ led-blue {
>>> sound {
>>> model = "ODROID-C4";
>>> };
>>> -};
>>>
>>> -&gpio {
>>> - /*
>>> - * WARNING: The USB Hub on the Odroid-C4 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.
>>> - */
>>> - hog-0 {
>>> - gpio-hog;
>>> - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
>>> - output-high;
>>> - line-name = "usb-hub-reset";
>>> + /* USB hub supports both USB 2.0 and USB 3.0 root hub */
>>> + usb-hub {
>>> + dr_mode = "host";
>>
>> Is this really needed ?
>>
> I got carried forward from the other device tree binding,
> If not needed I will drop this.
>
>>> + #address-cells = <1>;
>>> + #size-cells = <0>;
>>> +
>>> + /* 2.0 hub on port 1 */
>>> + hub_2_0: hub@1 {
>>> + compatible = "usb2109,2817";
>>> + reg = <1>;
>>> + peer-hub = <&hub_3_0>;
>>> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
>>> + vdd-supply = <&vcc_5v>;
>>> + };
>>> +
>>> + /* 3.1 hub on port 4 */
>>> + hub_3_0: hub@2 {
>>> + compatible = "usb2109,817";
>>> + reg = <2>;
>>> + peer-hub = <&hub_2_0>;
>>> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
>>> + vdd-supply = <&vcc_5v>;
>>> + };
>>
>> The final discussion in v1 was to drop this /usb-hub node and move the
>> hub_2_0 & hub_3_0 node under the dwc3 node.
>>
>
> Yes, but It did not work back then, since these are two different events
> USB node will try to bring the PHY and dwc2 and dwc2 nodes up.
> USB hub supports the reset of the USB hub and links the power supply
> to the ports.
> This works on this board.
Forget the dwc2 node, the dwc2 since GXL is device mode only, so you need to put both
nodes in the dwc3 node which is host-only.
Neil
>
>> Neil
>>
> Thanks
>
> -Anand
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
@ 2023-01-18 13:24 ` neil.armstrong
0 siblings, 0 replies; 54+ messages in thread
From: neil.armstrong @ 2023-01-18 13:24 UTC (permalink / raw)
To: Anand Moon
Cc: Rob Herring, Krzysztof Kozlowski, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, linux-amlogic, Matthias Kaehlcke,
Alexander Stein, Johan Hovold, devicetree, linux-arm-kernel,
linux-kernel
On 18/01/2023 12:55, Anand Moon wrote:
> Hi Neil,
>
> Thanks for your review comments.
>
> On Wed, 18 Jan 2023 at 13:59, Neil Armstrong <neil.armstrong@linaro.org> wrote:
>>
>> On 18/01/2023 05:44, Anand Moon wrote:
>>> On Odroid c4 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.
>>>
>>> USB hub is combination of USB 2.0 and USB 3.0 root hub so
>>> use peer-hub node to link then.
>>>
>>> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
>>> ---
>>> v2: - fix the compatible string.
>>> - Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
>>> ---
>>> .../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
>>> 1 file changed, 23 insertions(+), 13 deletions(-)
>>>
>>> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
>>> index 8c30ce63686e..d04768a66bfe 100644
>>> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
>>> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
>>> @@ -26,20 +26,30 @@ led-blue {
>>> sound {
>>> model = "ODROID-C4";
>>> };
>>> -};
>>>
>>> -&gpio {
>>> - /*
>>> - * WARNING: The USB Hub on the Odroid-C4 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.
>>> - */
>>> - hog-0 {
>>> - gpio-hog;
>>> - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
>>> - output-high;
>>> - line-name = "usb-hub-reset";
>>> + /* USB hub supports both USB 2.0 and USB 3.0 root hub */
>>> + usb-hub {
>>> + dr_mode = "host";
>>
>> Is this really needed ?
>>
> I got carried forward from the other device tree binding,
> If not needed I will drop this.
>
>>> + #address-cells = <1>;
>>> + #size-cells = <0>;
>>> +
>>> + /* 2.0 hub on port 1 */
>>> + hub_2_0: hub@1 {
>>> + compatible = "usb2109,2817";
>>> + reg = <1>;
>>> + peer-hub = <&hub_3_0>;
>>> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
>>> + vdd-supply = <&vcc_5v>;
>>> + };
>>> +
>>> + /* 3.1 hub on port 4 */
>>> + hub_3_0: hub@2 {
>>> + compatible = "usb2109,817";
>>> + reg = <2>;
>>> + peer-hub = <&hub_2_0>;
>>> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
>>> + vdd-supply = <&vcc_5v>;
>>> + };
>>
>> The final discussion in v1 was to drop this /usb-hub node and move the
>> hub_2_0 & hub_3_0 node under the dwc3 node.
>>
>
> Yes, but It did not work back then, since these are two different events
> USB node will try to bring the PHY and dwc2 and dwc2 nodes up.
> USB hub supports the reset of the USB hub and links the power supply
> to the ports.
> This works on this board.
Forget the dwc2 node, the dwc2 since GXL is device mode only, so you need to put both
nodes in the dwc3 node which is host-only.
Neil
>
>> Neil
>>
> Thanks
>
> -Anand
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
@ 2023-01-18 13:24 ` neil.armstrong
0 siblings, 0 replies; 54+ messages in thread
From: neil.armstrong @ 2023-01-18 13:24 UTC (permalink / raw)
To: Anand Moon
Cc: Rob Herring, Krzysztof Kozlowski, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, linux-amlogic, Matthias Kaehlcke,
Alexander Stein, Johan Hovold, devicetree, linux-arm-kernel,
linux-kernel
On 18/01/2023 12:55, Anand Moon wrote:
> Hi Neil,
>
> Thanks for your review comments.
>
> On Wed, 18 Jan 2023 at 13:59, Neil Armstrong <neil.armstrong@linaro.org> wrote:
>>
>> On 18/01/2023 05:44, Anand Moon wrote:
>>> On Odroid c4 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.
>>>
>>> USB hub is combination of USB 2.0 and USB 3.0 root hub so
>>> use peer-hub node to link then.
>>>
>>> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
>>> ---
>>> v2: - fix the compatible string.
>>> - Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
>>> ---
>>> .../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
>>> 1 file changed, 23 insertions(+), 13 deletions(-)
>>>
>>> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
>>> index 8c30ce63686e..d04768a66bfe 100644
>>> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
>>> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
>>> @@ -26,20 +26,30 @@ led-blue {
>>> sound {
>>> model = "ODROID-C4";
>>> };
>>> -};
>>>
>>> -&gpio {
>>> - /*
>>> - * WARNING: The USB Hub on the Odroid-C4 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.
>>> - */
>>> - hog-0 {
>>> - gpio-hog;
>>> - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
>>> - output-high;
>>> - line-name = "usb-hub-reset";
>>> + /* USB hub supports both USB 2.0 and USB 3.0 root hub */
>>> + usb-hub {
>>> + dr_mode = "host";
>>
>> Is this really needed ?
>>
> I got carried forward from the other device tree binding,
> If not needed I will drop this.
>
>>> + #address-cells = <1>;
>>> + #size-cells = <0>;
>>> +
>>> + /* 2.0 hub on port 1 */
>>> + hub_2_0: hub@1 {
>>> + compatible = "usb2109,2817";
>>> + reg = <1>;
>>> + peer-hub = <&hub_3_0>;
>>> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
>>> + vdd-supply = <&vcc_5v>;
>>> + };
>>> +
>>> + /* 3.1 hub on port 4 */
>>> + hub_3_0: hub@2 {
>>> + compatible = "usb2109,817";
>>> + reg = <2>;
>>> + peer-hub = <&hub_2_0>;
>>> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
>>> + vdd-supply = <&vcc_5v>;
>>> + };
>>
>> The final discussion in v1 was to drop this /usb-hub node and move the
>> hub_2_0 & hub_3_0 node under the dwc3 node.
>>
>
> Yes, but It did not work back then, since these are two different events
> USB node will try to bring the PHY and dwc2 and dwc2 nodes up.
> USB hub supports the reset of the USB hub and links the power supply
> to the ports.
> This works on this board.
Forget the dwc2 node, the dwc2 since GXL is device mode only, so you need to put both
nodes in the dwc3 node which is host-only.
Neil
>
>> Neil
>>
> Thanks
>
> -Anand
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 4/9] usb: misc: onboard_usb_hub: add Genesys Logic GL852G hub support
2023-01-18 4:44 ` Anand Moon
@ 2023-01-18 17:18 ` Matthias Kaehlcke
-1 siblings, 0 replies; 54+ messages in thread
From: Matthias Kaehlcke @ 2023-01-18 17:18 UTC (permalink / raw)
To: Anand Moon
Cc: Greg Kroah-Hartman, linux-amlogic, Alexander Stein, Johan Hovold,
linux-usb, linux-kernel
On Wed, Jan 18, 2023 at 04:44:12AM +0000, Anand Moon wrote:
> Genesys Logic GL852G is a 4-port USB 2.0 STT hub that has a reset pin to
> toggle and a 5.0V core supply exported though an integrated LDO is
> available for powering it.
>
> Add the support for this hub, for controlling the reset pin and the core
> power supply.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
Acked-by: Matthias Kaehlcke <mka@chromium.org>
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 4/9] usb: misc: onboard_usb_hub: add Genesys Logic GL852G hub support
@ 2023-01-18 17:18 ` Matthias Kaehlcke
0 siblings, 0 replies; 54+ messages in thread
From: Matthias Kaehlcke @ 2023-01-18 17:18 UTC (permalink / raw)
To: Anand Moon
Cc: Greg Kroah-Hartman, linux-amlogic, Alexander Stein, Johan Hovold,
linux-usb, linux-kernel
On Wed, Jan 18, 2023 at 04:44:12AM +0000, Anand Moon wrote:
> Genesys Logic GL852G is a 4-port USB 2.0 STT hub that has a reset pin to
> toggle and a 5.0V core supply exported though an integrated LDO is
> available for powering it.
>
> Add the support for this hub, for controlling the reset pin and the core
> power supply.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
Acked-by: Matthias Kaehlcke <mka@chromium.org>
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 8/9] usb: misc: onboard_usb_hub: add VIA LAB VL817 hub support
2023-01-18 4:44 ` Anand Moon
@ 2023-01-18 17:22 ` Matthias Kaehlcke
-1 siblings, 0 replies; 54+ messages in thread
From: Matthias Kaehlcke @ 2023-01-18 17:22 UTC (permalink / raw)
To: Anand Moon
Cc: Greg Kroah-Hartman, linux-amlogic, Alexander Stein, Johan Hovold,
linux-usb, linux-kernel
On Wed, Jan 18, 2023 at 04:44:16AM +0000, Anand Moon wrote:
> VIA LAB VL817 is a 4-port USB 3.1 hub and USB 2.0 root hub
> that has a reset pin to toggle and a 5.0V core supply exported
> though an integrated LDO is available for powering it.
>
> Add the support for this hub, for controlling the reset pin and
> the core power supply.
>
> Add USB device id's for USB 2.0 and USB 3.0 root hub.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
Acked-by: Matthias Kaehlcke <mka@chromium.org>
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 8/9] usb: misc: onboard_usb_hub: add VIA LAB VL817 hub support
@ 2023-01-18 17:22 ` Matthias Kaehlcke
0 siblings, 0 replies; 54+ messages in thread
From: Matthias Kaehlcke @ 2023-01-18 17:22 UTC (permalink / raw)
To: Anand Moon
Cc: Greg Kroah-Hartman, linux-amlogic, Alexander Stein, Johan Hovold,
linux-usb, linux-kernel
On Wed, Jan 18, 2023 at 04:44:16AM +0000, Anand Moon wrote:
> VIA LAB VL817 is a 4-port USB 3.1 hub and USB 2.0 root hub
> that has a reset pin to toggle and a 5.0V core supply exported
> though an integrated LDO is available for powering it.
>
> Add the support for this hub, for controlling the reset pin and
> the core power supply.
>
> Add USB device id's for USB 2.0 and USB 3.0 root hub.
>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
Acked-by: Matthias Kaehlcke <mka@chromium.org>
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
2023-01-18 13:24 ` neil.armstrong
(?)
@ 2023-01-19 7:26 ` Anand Moon
-1 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-19 7:26 UTC (permalink / raw)
To: neil.armstrong
Cc: Rob Herring, Krzysztof Kozlowski, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, linux-amlogic, Matthias Kaehlcke,
Alexander Stein, Johan Hovold, devicetree, linux-arm-kernel,
linux-kernel
Hi Neil,
On Wed, 18 Jan 2023 at 18:54, <neil.armstrong@linaro.org> wrote:
>
> On 18/01/2023 12:55, Anand Moon wrote:
> > Hi Neil,
> >
> > Thanks for your review comments.
> >
> > On Wed, 18 Jan 2023 at 13:59, Neil Armstrong <neil.armstrong@linaro.org> wrote:
> >>
> >> On 18/01/2023 05:44, Anand Moon wrote:
> >>> On Odroid c4 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.
> >>>
> >>> USB hub is combination of USB 2.0 and USB 3.0 root hub so
> >>> use peer-hub node to link then.
> >>>
> >>> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> >>> ---
> >>> v2: - fix the compatible string.
> >>> - Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
> >>> ---
> >>> .../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
> >>> 1 file changed, 23 insertions(+), 13 deletions(-)
> >>>
> >>> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> >>> index 8c30ce63686e..d04768a66bfe 100644
> >>> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> >>> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> >>> @@ -26,20 +26,30 @@ led-blue {
> >>> sound {
> >>> model = "ODROID-C4";
> >>> };
> >>> -};
> >>>
> >>> -&gpio {
> >>> - /*
> >>> - * WARNING: The USB Hub on the Odroid-C4 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.
> >>> - */
> >>> - hog-0 {
> >>> - gpio-hog;
> >>> - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
> >>> - output-high;
> >>> - line-name = "usb-hub-reset";
> >>> + /* USB hub supports both USB 2.0 and USB 3.0 root hub */
> >>> + usb-hub {
> >>> + dr_mode = "host";
> >>
> >> Is this really needed ?
> >>
> > I got carried forward from the other device tree binding,
> > If not needed I will drop this.
> >
> >>> + #address-cells = <1>;
> >>> + #size-cells = <0>;
> >>> +
> >>> + /* 2.0 hub on port 1 */
> >>> + hub_2_0: hub@1 {
> >>> + compatible = "usb2109,2817";
> >>> + reg = <1>;
> >>> + peer-hub = <&hub_3_0>;
> >>> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> >>> + vdd-supply = <&vcc_5v>;
> >>> + };
> >>> +
> >>> + /* 3.1 hub on port 4 */
> >>> + hub_3_0: hub@2 {
> >>> + compatible = "usb2109,817";
> >>> + reg = <2>;
> >>> + peer-hub = <&hub_2_0>;
> >>> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> >>> + vdd-supply = <&vcc_5v>;
> >>> + };
> >>
> >> The final discussion in v1 was to drop this /usb-hub node and move the
> >> hub_2_0 & hub_3_0 node under the dwc3 node.
> >>
> >
> > Yes, but It did not work back then, since these are two different events
> > USB node will try to bring the PHY and dwc2 and dwc2 nodes up.
> > USB hub supports the reset of the USB hub and links the power supply
> > to the ports.
> > This works on this board.
>
> Forget the dwc2 node, the dwc2 since GXL is device mode only, so you need to put both
> nodes in the dwc3 node which is host-only.
>
> Neil
>
Ok, I will move this node under dwc3 node, in the next version.
> >
> >> Neil
Thanks
-Anand
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
@ 2023-01-19 7:26 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-19 7:26 UTC (permalink / raw)
To: neil.armstrong
Cc: Rob Herring, Krzysztof Kozlowski, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, linux-amlogic, Matthias Kaehlcke,
Alexander Stein, Johan Hovold, devicetree, linux-arm-kernel,
linux-kernel
Hi Neil,
On Wed, 18 Jan 2023 at 18:54, <neil.armstrong@linaro.org> wrote:
>
> On 18/01/2023 12:55, Anand Moon wrote:
> > Hi Neil,
> >
> > Thanks for your review comments.
> >
> > On Wed, 18 Jan 2023 at 13:59, Neil Armstrong <neil.armstrong@linaro.org> wrote:
> >>
> >> On 18/01/2023 05:44, Anand Moon wrote:
> >>> On Odroid c4 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.
> >>>
> >>> USB hub is combination of USB 2.0 and USB 3.0 root hub so
> >>> use peer-hub node to link then.
> >>>
> >>> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> >>> ---
> >>> v2: - fix the compatible string.
> >>> - Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
> >>> ---
> >>> .../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
> >>> 1 file changed, 23 insertions(+), 13 deletions(-)
> >>>
> >>> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> >>> index 8c30ce63686e..d04768a66bfe 100644
> >>> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> >>> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> >>> @@ -26,20 +26,30 @@ led-blue {
> >>> sound {
> >>> model = "ODROID-C4";
> >>> };
> >>> -};
> >>>
> >>> -&gpio {
> >>> - /*
> >>> - * WARNING: The USB Hub on the Odroid-C4 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.
> >>> - */
> >>> - hog-0 {
> >>> - gpio-hog;
> >>> - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
> >>> - output-high;
> >>> - line-name = "usb-hub-reset";
> >>> + /* USB hub supports both USB 2.0 and USB 3.0 root hub */
> >>> + usb-hub {
> >>> + dr_mode = "host";
> >>
> >> Is this really needed ?
> >>
> > I got carried forward from the other device tree binding,
> > If not needed I will drop this.
> >
> >>> + #address-cells = <1>;
> >>> + #size-cells = <0>;
> >>> +
> >>> + /* 2.0 hub on port 1 */
> >>> + hub_2_0: hub@1 {
> >>> + compatible = "usb2109,2817";
> >>> + reg = <1>;
> >>> + peer-hub = <&hub_3_0>;
> >>> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> >>> + vdd-supply = <&vcc_5v>;
> >>> + };
> >>> +
> >>> + /* 3.1 hub on port 4 */
> >>> + hub_3_0: hub@2 {
> >>> + compatible = "usb2109,817";
> >>> + reg = <2>;
> >>> + peer-hub = <&hub_2_0>;
> >>> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> >>> + vdd-supply = <&vcc_5v>;
> >>> + };
> >>
> >> The final discussion in v1 was to drop this /usb-hub node and move the
> >> hub_2_0 & hub_3_0 node under the dwc3 node.
> >>
> >
> > Yes, but It did not work back then, since these are two different events
> > USB node will try to bring the PHY and dwc2 and dwc2 nodes up.
> > USB hub supports the reset of the USB hub and links the power supply
> > to the ports.
> > This works on this board.
>
> Forget the dwc2 node, the dwc2 since GXL is device mode only, so you need to put both
> nodes in the dwc3 node which is host-only.
>
> Neil
>
Ok, I will move this node under dwc3 node, in the next version.
> >
> >> Neil
Thanks
-Anand
^ permalink raw reply [flat|nested] 54+ messages in thread
* Re: [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
@ 2023-01-19 7:26 ` Anand Moon
0 siblings, 0 replies; 54+ messages in thread
From: Anand Moon @ 2023-01-19 7:26 UTC (permalink / raw)
To: neil.armstrong
Cc: Rob Herring, Krzysztof Kozlowski, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, linux-amlogic, Matthias Kaehlcke,
Alexander Stein, Johan Hovold, devicetree, linux-arm-kernel,
linux-kernel
Hi Neil,
On Wed, 18 Jan 2023 at 18:54, <neil.armstrong@linaro.org> wrote:
>
> On 18/01/2023 12:55, Anand Moon wrote:
> > Hi Neil,
> >
> > Thanks for your review comments.
> >
> > On Wed, 18 Jan 2023 at 13:59, Neil Armstrong <neil.armstrong@linaro.org> wrote:
> >>
> >> On 18/01/2023 05:44, Anand Moon wrote:
> >>> On Odroid c4 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.
> >>>
> >>> USB hub is combination of USB 2.0 and USB 3.0 root hub so
> >>> use peer-hub node to link then.
> >>>
> >>> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> >>> ---
> >>> v2: - fix the compatible string.
> >>> - Fix the hub node to use peer-hub to link the usb 2.0 and usb 3.0.
> >>> ---
> >>> .../boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 ++++++++++++-------
> >>> 1 file changed, 23 insertions(+), 13 deletions(-)
> >>>
> >>> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> >>> index 8c30ce63686e..d04768a66bfe 100644
> >>> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> >>> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
> >>> @@ -26,20 +26,30 @@ led-blue {
> >>> sound {
> >>> model = "ODROID-C4";
> >>> };
> >>> -};
> >>>
> >>> -&gpio {
> >>> - /*
> >>> - * WARNING: The USB Hub on the Odroid-C4 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.
> >>> - */
> >>> - hog-0 {
> >>> - gpio-hog;
> >>> - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
> >>> - output-high;
> >>> - line-name = "usb-hub-reset";
> >>> + /* USB hub supports both USB 2.0 and USB 3.0 root hub */
> >>> + usb-hub {
> >>> + dr_mode = "host";
> >>
> >> Is this really needed ?
> >>
> > I got carried forward from the other device tree binding,
> > If not needed I will drop this.
> >
> >>> + #address-cells = <1>;
> >>> + #size-cells = <0>;
> >>> +
> >>> + /* 2.0 hub on port 1 */
> >>> + hub_2_0: hub@1 {
> >>> + compatible = "usb2109,2817";
> >>> + reg = <1>;
> >>> + peer-hub = <&hub_3_0>;
> >>> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> >>> + vdd-supply = <&vcc_5v>;
> >>> + };
> >>> +
> >>> + /* 3.1 hub on port 4 */
> >>> + hub_3_0: hub@2 {
> >>> + compatible = "usb2109,817";
> >>> + reg = <2>;
> >>> + peer-hub = <&hub_2_0>;
> >>> + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
> >>> + vdd-supply = <&vcc_5v>;
> >>> + };
> >>
> >> The final discussion in v1 was to drop this /usb-hub node and move the
> >> hub_2_0 & hub_3_0 node under the dwc3 node.
> >>
> >
> > Yes, but It did not work back then, since these are two different events
> > USB node will try to bring the PHY and dwc2 and dwc2 nodes up.
> > USB hub supports the reset of the USB hub and links the power supply
> > to the ports.
> > This works on this board.
>
> Forget the dwc2 node, the dwc2 since GXL is device mode only, so you need to put both
> nodes in the dwc3 node which is host-only.
>
> Neil
>
Ok, I will move this node under dwc3 node, in the next version.
> >
> >> Neil
Thanks
-Anand
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 54+ messages in thread
end of thread, other threads:[~2023-01-19 7:28 UTC | newest]
Thread overview: 54+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-18 4:44 [PATCH v2 0/9] Used onboard HUB to reset and add power to hub Anand Moon
2023-01-18 4:44 ` [PATCH v2 1/9] dt-bindings: usb: Add device id for Genesys Logic hub controller Anand Moon
2023-01-18 4:44 ` Anand Moon
2023-01-18 8:17 ` Krzysztof Kozlowski
2023-01-18 8:17 ` Krzysztof Kozlowski
2023-01-18 4:44 ` [PATCH v2 2/9] ARM: dts: amlogic: Used onboard usb hub reset to enable usb hub Anand Moon
2023-01-18 4:44 ` Anand Moon
2023-01-18 4:44 ` Anand Moon
2023-01-18 8:26 ` Neil Armstrong
2023-01-18 8:26 ` Neil Armstrong
2023-01-18 8:26 ` Neil Armstrong
2023-01-18 4:44 ` [PATCH v2 3/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c2 Anand Moon
2023-01-18 4:44 ` Anand Moon
2023-01-18 4:44 ` Anand Moon
2023-01-18 8:27 ` Neil Armstrong
2023-01-18 8:27 ` Neil Armstrong
2023-01-18 8:27 ` Neil Armstrong
2023-01-18 4:44 ` [PATCH v2 4/9] usb: misc: onboard_usb_hub: add Genesys Logic GL852G hub support Anand Moon
2023-01-18 4:44 ` Anand Moon
2023-01-18 17:18 ` Matthias Kaehlcke
2023-01-18 17:18 ` Matthias Kaehlcke
2023-01-18 4:44 ` [PATCH v2 5/9] vendor-prefixes: Add VIA Labs, Inc Anand Moon
2023-01-18 4:44 ` Anand Moon
2023-01-18 4:44 ` [PATCH v2 6/9] dt-bindings: usb: Add binding for Via lab VL817 hub controller Anand Moon
2023-01-18 4:44 ` Anand Moon
2023-01-18 8:19 ` Krzysztof Kozlowski
2023-01-18 8:19 ` Krzysztof Kozlowski
2023-01-18 11:55 ` Anand Moon
2023-01-18 11:55 ` Anand Moon
2023-01-18 4:44 ` [PATCH v2 7/9] arm64: dts: amlogic: Used onboard usb hub reset on odroid c4 Anand Moon
2023-01-18 4:44 ` Anand Moon
2023-01-18 4:44 ` Anand Moon
2023-01-18 8:29 ` Neil Armstrong
2023-01-18 8:29 ` Neil Armstrong
2023-01-18 8:29 ` Neil Armstrong
2023-01-18 11:55 ` Anand Moon
2023-01-18 11:55 ` Anand Moon
2023-01-18 11:55 ` Anand Moon
2023-01-18 13:24 ` neil.armstrong
2023-01-18 13:24 ` neil.armstrong
2023-01-18 13:24 ` neil.armstrong
2023-01-19 7:26 ` Anand Moon
2023-01-19 7:26 ` Anand Moon
2023-01-19 7:26 ` Anand Moon
2023-01-18 4:44 ` [PATCH v2 8/9] usb: misc: onboard_usb_hub: add VIA LAB VL817 hub support Anand Moon
2023-01-18 4:44 ` Anand Moon
2023-01-18 17:22 ` Matthias Kaehlcke
2023-01-18 17:22 ` Matthias Kaehlcke
2023-01-18 4:44 ` [PATCH v2 9/9] arm64: defconfig: Enable USB onboard HUB driver Anand Moon
2023-01-18 4:44 ` Anand Moon
2023-01-18 4:44 ` Anand Moon
2023-01-18 8:29 ` Neil Armstrong
2023-01-18 8:29 ` Neil Armstrong
2023-01-18 8:29 ` Neil Armstrong
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.