public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/2] usb: misc: onboard_dev: Add WCH CH334 USB2.0 Hub (1a86:8091)
@ 2026-01-13  9:58 Chaoyi Chen
  2026-01-13  9:58 ` [PATCH v2 1/2] dt-bindings: usb: Add binding for WCH CH334/CH335 hub controller Chaoyi Chen
  2026-01-13  9:58 ` [PATCH v2 2/2] usb: misc: onboard_dev: Add WCH CH334 USB2.0 Hub (1a86:8091) Chaoyi Chen
  0 siblings, 2 replies; 4+ messages in thread
From: Chaoyi Chen @ 2026-01-13  9:58 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Catalin Popescu, Stephen Boyd, Jens Glathe,
	Dmitry Baryshkov, Mike Looijmans, Pin-yen Lin, J. Neuschäfer,
	Quentin Schulz
  Cc: linux-usb, devicetree, linux-kernel, Chaoyi Chen

From: Chaoyi Chen <chaoyi.chen@rock-chips.com>

Hi,

This series add support for WCH CH334/CH335 USB2.0 Hub (1a86:8091).

Changes in v2:
- Link to v1: https://lore.kernel.org/all/20260112022823.91-2-kernel@airkyi.com/
- Add missing driver (PATCH 2).
- Fix the incorrect reset GPIO polarity.
- Use a more meaningful supply name.

Chaoyi Chen (2):
  dt-bindings: usb: Add binding for WCH CH334/CH335 hub controller
  usb: misc: onboard_dev: Add WCH CH334 USB2.0 Hub (1a86:8091)

 .../devicetree/bindings/usb/wch,ch334.yaml    | 65 +++++++++++++++++++
 drivers/usb/misc/onboard_usb_dev.h            |  8 +++
 2 files changed, 73 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/usb/wch,ch334.yaml

--
2.51.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH v2 1/2] dt-bindings: usb: Add binding for WCH CH334/CH335 hub controller
  2026-01-13  9:58 [PATCH v2 0/2] usb: misc: onboard_dev: Add WCH CH334 USB2.0 Hub (1a86:8091) Chaoyi Chen
@ 2026-01-13  9:58 ` Chaoyi Chen
  2026-01-15 18:49   ` Rob Herring (Arm)
  2026-01-13  9:58 ` [PATCH v2 2/2] usb: misc: onboard_dev: Add WCH CH334 USB2.0 Hub (1a86:8091) Chaoyi Chen
  1 sibling, 1 reply; 4+ messages in thread
From: Chaoyi Chen @ 2026-01-13  9:58 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Catalin Popescu, Stephen Boyd, Jens Glathe,
	Dmitry Baryshkov, Mike Looijmans, Pin-yen Lin, J. Neuschäfer,
	Quentin Schulz
  Cc: linux-usb, devicetree, linux-kernel, Chaoyi Chen

From: Chaoyi Chen <chaoyi.chen@rock-chips.com>

The WCH CH334/CH335[0] are USB2.0 protocol compliant 4-port USB HUB
controller chips, supporting USB2.0 high-speed and full-speed for
upstream ports, and USB2.0 high-speed 480Mbps, full-speed 12Mbps and
low-speed 1.5Mbps for downstream ports, supporting not only low-cost STT
mode (single TT schedules 4 downstream ports in time share), but also
supports high performance MTT mode (4 TTs each corresponding to 1 port,
concurrent processing).

Add a device tree binding for it.

[0]: https://www.wch-ic.com/downloads/CH334DS1_PDF.html

Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
---
Changes in v2:
- Fix the incorrect reset GPIO polarity.
- Use a more meaningful supply name.
---
 .../devicetree/bindings/usb/wch,ch334.yaml    | 65 +++++++++++++++++++
 1 file changed, 65 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/usb/wch,ch334.yaml

diff --git a/Documentation/devicetree/bindings/usb/wch,ch334.yaml b/Documentation/devicetree/bindings/usb/wch,ch334.yaml
new file mode 100644
index 000000000000..2fdca14dc1de
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/wch,ch334.yaml
@@ -0,0 +1,65 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/usb/wch,ch334.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: WCH CH334/CH335 USB 2.0 Hub Controller
+
+maintainers:
+  - Chaoyi Chen <kernel@airkyi.com>
+
+allOf:
+  - $ref: usb-hub.yaml#
+
+properties:
+  compatible:
+    enum:
+      - usb1a86,8091
+
+  reg: true
+
+  reset-gpios:
+    description: GPIO controlling the RESET# pin.
+
+  vdd33-supply:
+    description:
+      The regulator that provides 3.3V core power to the hub.
+
+  v5-supply:
+    description:
+      The regulator that provides 3.3V or 5V power to the hub.
+
+  ports:
+    $ref: /schemas/graph.yaml#/properties/ports
+
+    patternProperties:
+      '^port@':
+        $ref: /schemas/graph.yaml#/properties/port
+
+        properties:
+          reg:
+            minimum: 1
+            maximum: 4
+
+required:
+  - compatible
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+    usb {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        hub: hub@1 {
+            compatible = "usb1a86,8091";
+            reg = <1>;
+            reset-gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
+            v5-supply = <&vcc_3v3>;
+            vdd33-supply = <&vcc_3v3>;
+        };
+    };
-- 
2.51.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH v2 2/2] usb: misc: onboard_dev: Add WCH CH334 USB2.0 Hub (1a86:8091)
  2026-01-13  9:58 [PATCH v2 0/2] usb: misc: onboard_dev: Add WCH CH334 USB2.0 Hub (1a86:8091) Chaoyi Chen
  2026-01-13  9:58 ` [PATCH v2 1/2] dt-bindings: usb: Add binding for WCH CH334/CH335 hub controller Chaoyi Chen
@ 2026-01-13  9:58 ` Chaoyi Chen
  1 sibling, 0 replies; 4+ messages in thread
From: Chaoyi Chen @ 2026-01-13  9:58 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Catalin Popescu, Stephen Boyd, Jens Glathe,
	Dmitry Baryshkov, Mike Looijmans, Pin-yen Lin, J. Neuschäfer,
	Quentin Schulz
  Cc: linux-usb, devicetree, linux-kernel, Chaoyi Chen

From: Chaoyi Chen <chaoyi.chen@rock-chips.com>

The WCH CH334/CH335[0] are USB2.0 protocol compliant 4-port USB HUB
controller chips, supporting USB2.0 high-speed and full-speed for
upstream ports, and USB2.0 high-speed 480Mbps, full-speed 12Mbps and
low-speed 1.5Mbps for downstream ports, supporting not only low-cost STT
mode (single TT schedules 4 downstream ports in time share), but also
supports high performance MTT mode (4 TTs each corresponding to 1 port,
concurrent processing).

[0]: https://www.wch-ic.com/downloads/CH334DS1_PDF.html

Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
---
 drivers/usb/misc/onboard_usb_dev.h | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/drivers/usb/misc/onboard_usb_dev.h b/drivers/usb/misc/onboard_usb_dev.h
index c1462be5526d..1a1e86e60e04 100644
--- a/drivers/usb/misc/onboard_usb_dev.h
+++ b/drivers/usb/misc/onboard_usb_dev.h
@@ -115,6 +115,13 @@ static const struct onboard_dev_pdata vialab_vl817_data = {
 	.is_hub = true,
 };
 
+static const struct onboard_dev_pdata wch_ch334_data = {
+	.reset_us = 14000,
+	.num_supplies = 2,
+	.supply_names = { "vdd33", "v5" },
+	.is_hub = true,
+};
+
 static const struct onboard_dev_pdata xmos_xvf3500_data = {
 	.reset_us = 1,
 	.num_supplies = 2,
@@ -146,6 +153,7 @@ static const struct of_device_id onboard_dev_match[] = {
 	{ .compatible = "usbbda,5411", .data = &realtek_rts5411_data, },
 	{ .compatible = "usbbda,414", .data = &realtek_rts5411_data, },
 	{ .compatible = "usbbda,5414", .data = &realtek_rts5411_data, },
+	{ .compatible = "usb1a86,8091", .data = &wch_ch334_data, },
 	{ .compatible = "usb1da0,5511", .data = &parade_ps5511_data, },
 	{ .compatible = "usb1da0,55a1", .data = &parade_ps5511_data, },
 	{ .compatible = "usb2109,817", .data = &vialab_vl817_data, },
-- 
2.51.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH v2 1/2] dt-bindings: usb: Add binding for WCH CH334/CH335 hub controller
  2026-01-13  9:58 ` [PATCH v2 1/2] dt-bindings: usb: Add binding for WCH CH334/CH335 hub controller Chaoyi Chen
@ 2026-01-15 18:49   ` Rob Herring (Arm)
  0 siblings, 0 replies; 4+ messages in thread
From: Rob Herring (Arm) @ 2026-01-15 18:49 UTC (permalink / raw)
  To: Chaoyi Chen
  Cc: Pin-yen Lin, Dmitry Baryshkov, Conor Dooley, Quentin Schulz,
	Greg Kroah-Hartman, devicetree, Stephen Boyd, linux-kernel,
	Mike Looijmans, Catalin Popescu, Jens Glathe, linux-usb,
	Chaoyi Chen, J. Neuschäfer, Krzysztof Kozlowski


On Tue, 13 Jan 2026 17:58:26 +0800, Chaoyi Chen wrote:
> From: Chaoyi Chen <chaoyi.chen@rock-chips.com>
> 
> The WCH CH334/CH335[0] are USB2.0 protocol compliant 4-port USB HUB
> controller chips, supporting USB2.0 high-speed and full-speed for
> upstream ports, and USB2.0 high-speed 480Mbps, full-speed 12Mbps and
> low-speed 1.5Mbps for downstream ports, supporting not only low-cost STT
> mode (single TT schedules 4 downstream ports in time share), but also
> supports high performance MTT mode (4 TTs each corresponding to 1 port,
> concurrent processing).
> 
> Add a device tree binding for it.
> 
> [0]: https://www.wch-ic.com/downloads/CH334DS1_PDF.html
> 
> Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
> ---
> Changes in v2:
> - Fix the incorrect reset GPIO polarity.
> - Use a more meaningful supply name.
> ---
>  .../devicetree/bindings/usb/wch,ch334.yaml    | 65 +++++++++++++++++++
>  1 file changed, 65 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/usb/wch,ch334.yaml
> 

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-01-15 18:49 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-13  9:58 [PATCH v2 0/2] usb: misc: onboard_dev: Add WCH CH334 USB2.0 Hub (1a86:8091) Chaoyi Chen
2026-01-13  9:58 ` [PATCH v2 1/2] dt-bindings: usb: Add binding for WCH CH334/CH335 hub controller Chaoyi Chen
2026-01-15 18:49   ` Rob Herring (Arm)
2026-01-13  9:58 ` [PATCH v2 2/2] usb: misc: onboard_dev: Add WCH CH334 USB2.0 Hub (1a86:8091) Chaoyi Chen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox