Skip to contentSkip to conversation

Used onboard HUB to reset and add power to hub

PATCH New Anand Moon 1 participant 5 messages Jan 30, 2023

Subsystems (3)
lore
Share & tools
lore

Anand Moon

author
#0 lore raw

v5 cover Used onboard HUB to reset and add power to hub

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.

v5: rebased on linux-next
Fix the $subject and review by Krzysztof

v4: rebased on linux-next
Fixed some small changes like the subject.
Dropped the merge patches.

[3] https://lore.kernel.org/all/[email protected]

v3: Fix some small changes in $subject
address the input from Neil
fix the vialab device tree binding as per Krzysztof inputs.

[2] https://lore.kernel.org/all/[email protected]

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.
[1] https://lore.kernel.org/all/[email protected]

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 (4):
ARM: dts: amlogic: Drop superfluous dr_mode in usb node on odroid C1
arm64: dts: amlogic: Drop superfluous dr_mode in usb node on odroid c2
arm64: dts: meson: move usb-hub node under dwc3 node on Odroid C4
dt-bindings: usb: vialab,vl817: Cleanup compatible, reset-gpios and
required

 .../devicetree/bindings/usb/vialab,vl817.yaml | 18 ++++----
 arch/arm/boot/dts/meson8b-odroidc1.dts        |  1 -
 .../boot/dts/amlogic/meson-gxbb-odroidc2.dts  |  1 -
 .../boot/dts/amlogic/meson-sm1-odroid-c4.dts  | 41 +++++++++----------
 4 files changed, 30 insertions(+), 31 deletions(-)
Signature · 7 lines
2.38.1


_______________________________________________
linux-amlogic mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-amlogic
author
#1 lore raw

PATCH v5 1/4 ARM: dts: amlogic: Drop superfluous dr_mode in usb node on odroid C1

Drop superfluous dr_mode="host" as it is the default in meson.dtsi

Fixes 3325f3e4534c ("ARM: dts: amlogic: Used onboard usb hub reset to enable usb hub")

---
v5: none
v4: neww patch

---
 arch/arm/boot/dts/meson8b-odroidc1.dts | 1 -
 1 file changed, 1 deletion(-)
arch/arm/boot/dts/meson8b-odroidc1.dts +0 -1
index 941682844faf..1097b35b7a49 100644
@@ -368,7 +368,6 @@ &usb1_phy {
 };
 
 &usb1 {
-	dr_mode = "host";
 	#address-cells = <1>;
 	#size-cells = <0>;
 	status = "okay";
Signature · 1 line
2.38.1
author
#2 lore raw

PATCH v5 2/4 arm64: dts: amlogic: Drop superfluous dr_mode in usb node on odroid c2

In reply to Anand Moon

Drop superfluous dr_mode="host" as it is the default in meson-gxbb.dtsi

Fixes f24859bbec8a ("arm64: dts: amlogic: Used onboard usb hub reset on odroid c2")

---
v5: none
v4: neww patch

---
 arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts | 1 -
 1 file changed, 1 deletion(-)
arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts +0 -1
index 01356437a077..70b10934a811 100644
@@ -399,7 +399,6 @@ &usb0 {
 };
 
 &usb1 {
-	dr_mode = "host";
 	#address-cells = <1>;
 	#size-cells = <0>;
 	status = "okay";
Signature · 1 line
2.38.1
author
#3 lore raw

PATCH v5 3/4 arm64: dts: meson: move usb-hub node under dwc3 node on Odroid C4

In reply to Anand Moon

Move the usb-hub node under dwc3 node and drop superfluous dr_mode as it is the default in meson-g12-common.dtsi.

Fixes 71593b2020b3 ("arm64: dts: amlogic: Used onboard usb hub reset on odroid c4")

---
v5: none
v4: new patch

---
 .../boot/dts/amlogic/meson-sm1-odroid-c4.dts  | 41 +++++++++----------
 1 file changed, 20 insertions(+), 21 deletions(-)
arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts +20 -21
index d04768a66bfe..a988015dd2d5 100644
@@ -26,30 +26,29 @@ led-blue {
 	sound {
 		model = "ODROID-C4";
 	};
+};
 
+&dwc3 {
 	/* 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>;
-		};
+	#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>;
-		};
+	/* 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>;
 	};
 };
 
Signature · 1 line
2.38.1
author
#4 lore raw

PATCH v5 4/4 dt-bindings: usb: vialab,vl817: Cleanup compatible, reset-gpios and required

In reply to Anand Moon

Cleanup by removing unneeded quotes from refs and add maxItems to reset-gpios and fix the required list.

Fixes 31360c28dfdd ("dt-bindings: usb: Add binding for Via lab VL817 hub controller")

---
v5: added Rev by Krzysztof
fix the subject as suggested by Krzysztof.
v4: Fix the subject and patch description.

---
 .../devicetree/bindings/usb/vialab,vl817.yaml  | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)
Documentation/devicetree/bindings/usb/vialab,vl817.yaml +10 -8
index 5f9771e22058..23a13e1d5c7a 100644
@@ -14,29 +14,32 @@ allOf:
 
 properties:
   compatible:
-    items:
-      - enum:
-          - usb2109,2817
-          - usb2109,817
+    enum:
+      - usb2109,2817
+      - usb2109,817
 
   reg: true
 
   reset-gpios:
-    description: GPIO controlling the RESET# pin.
+    maxItems: 1
+    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'
+    $ref: /schemas/types.yaml#/definitions/phandle
     description:
       phandle to the peer hub on the controller.
 
 required:
-  - peer-hub
   - compatible
   - reg
+  - reset-gpios
+  - vdd-supply
+  - peer-hub
 
 additionalProperties: false
 
@@ -45,7 +48,6 @@ examples:
     #include <dt-bindings/gpio/gpio.h>
 
     usb {
-        dr_mode = "host";
         #address-cells = <1>;
         #size-cells = <0>;
 
Signature · 1 line
2.38.1