* [PATCH v2 0/2] usb: spacemit: k3: Add USB2.0 support
@ 2026-03-20 7:15 Yixun Lan
2026-03-20 7:15 ` [PATCH v2 1/2] dt-bindings: usb: dwc3: spacemit: add support for K3 SoC Yixun Lan
2026-03-20 7:15 ` [PATCH v2 2/2] usb: dwc3: dwc3-generic-plat: " Yixun Lan
0 siblings, 2 replies; 4+ messages in thread
From: Yixun Lan @ 2026-03-20 7:15 UTC (permalink / raw)
To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Ze Huang, Thinh Nguyen
Cc: Emil Renner Berthing, Junzhong Pan, Inochi Amaoto, spacemit,
linux-kernel, linux-usb, devicetree, linux-riscv, Yixun Lan
There is one USB2.0 host in K3 SoC which actually use DWC3 IP but only
provide USB2.0 functionality, and with only one USB2 PHY connected.
This series try to add USB2.0 support for SpacemiT K3 SoC, and will
enable it for Pico-ITX board in a separate patch. There is a run-time
dependency on USB phy[1], Hub[2] and reset[3] patches, but each series
should be quite independent, so I intend to not add prerequisite id
for the dependency here.
For people who interested, I've collected all patches and put a complete
branch here[4].
Link: https://lore.kernel.org/r/20260305-11-k3-usb2-phy-v4-0-15554fb933bc@kernel.org [1]
Link: https://lore.kernel.org/r/20260317-03-usb-hub-fe1-v1-0-71ec3989f5be@kernel.org [2]
Link: https://lore.kernel.org/r/20260314-01-k3-reset-usb-pci-v2-1-9dc0976d524e@kernel.org [3]
Link: https://github.com/spacemit-com/linux/tree/WIP/k3/usb2 [4]
Signed-off-by: Yixun Lan <dlan@kernel.org>
---
Changes in v2:
- separate DT patch out, will send in another series
- document for K1 about why also work with one PHY
- collect tags
- Link to v1: https://lore.kernel.org/r/20260317-02-k3-usb20-support-v1-0-d89f59062ad4@kernel.org
---
Yixun Lan (2):
dt-bindings: usb: dwc3: spacemit: add support for K3 SoC
usb: dwc3: dwc3-generic-plat: spacemit: add support for K3 SoC
Documentation/devicetree/bindings/usb/spacemit,k1-dwc3.yaml | 6 +++++-
drivers/usb/dwc3/dwc3-generic-plat.c | 1 +
2 files changed, 6 insertions(+), 1 deletion(-)
---
base-commit: c4c6e209dcf903ada6ddb4a0baca01ce8459a379
change-id: 20260312-02-k3-usb20-support-9a1893655e9d
Best regards,
--
Yixun Lan <dlan@kernel.org>
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH v2 1/2] dt-bindings: usb: dwc3: spacemit: add support for K3 SoC
2026-03-20 7:15 [PATCH v2 0/2] usb: spacemit: k3: Add USB2.0 support Yixun Lan
@ 2026-03-20 7:15 ` Yixun Lan
2026-03-20 17:30 ` Conor Dooley
2026-03-20 7:15 ` [PATCH v2 2/2] usb: dwc3: dwc3-generic-plat: " Yixun Lan
1 sibling, 1 reply; 4+ messages in thread
From: Yixun Lan @ 2026-03-20 7:15 UTC (permalink / raw)
To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Ze Huang, Thinh Nguyen
Cc: Emil Renner Berthing, Junzhong Pan, Inochi Amaoto, spacemit,
linux-kernel, linux-usb, devicetree, linux-riscv, Yixun Lan
Add compatible string for DWC3 USB controller found in SpacemiT K3 SoC.
The USB2.0 host controller in K3 SoC actually use DWC3 IP but only support
USB2.0 functionality, thus in the hardware layer, it has only one USB2 PHY.
While in K1 SoC, the USB controller has both USB2 and USB3 Combo PHY
connected, but able to work in a reduced USB2.0 mode which requres only
one USB2 PHY, leaves the USB3 Combo PHY to PCIe controller. So both K1
and K3 SoC are able to work in the USB2.0 mode which requires one PHY.
Explicitly reduce number of phy property to minimal one.
Signed-off-by: Yixun Lan <dlan@kernel.org>
---
Documentation/devicetree/bindings/usb/spacemit,k1-dwc3.yaml | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/usb/spacemit,k1-dwc3.yaml b/Documentation/devicetree/bindings/usb/spacemit,k1-dwc3.yaml
index 0f0b5e061ca1..cc27b363ca79 100644
--- a/Documentation/devicetree/bindings/usb/spacemit,k1-dwc3.yaml
+++ b/Documentation/devicetree/bindings/usb/spacemit,k1-dwc3.yaml
@@ -27,7 +27,9 @@ allOf:
properties:
compatible:
- const: spacemit,k1-dwc3
+ enum:
+ - spacemit,k1-dwc3
+ - spacemit,k3-dwc3
reg:
maxItems: 1
@@ -42,11 +44,13 @@ properties:
maxItems: 1
phys:
+ minItems: 1
items:
- description: phandle to USB2/HS PHY
- description: phandle to USB3/SS PHY
phy-names:
+ minItems: 1
items:
- const: usb2-phy
- const: usb3-phy
--
2.53.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH v2 2/2] usb: dwc3: dwc3-generic-plat: spacemit: add support for K3 SoC
2026-03-20 7:15 [PATCH v2 0/2] usb: spacemit: k3: Add USB2.0 support Yixun Lan
2026-03-20 7:15 ` [PATCH v2 1/2] dt-bindings: usb: dwc3: spacemit: add support for K3 SoC Yixun Lan
@ 2026-03-20 7:15 ` Yixun Lan
1 sibling, 0 replies; 4+ messages in thread
From: Yixun Lan @ 2026-03-20 7:15 UTC (permalink / raw)
To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Ze Huang, Thinh Nguyen
Cc: Emil Renner Berthing, Junzhong Pan, Inochi Amaoto, spacemit,
linux-kernel, linux-usb, devicetree, linux-riscv, Yixun Lan
Add support for the DWC3 USB controller which found in SpacemiT K3 SoC.
Acked-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com>
Signed-off-by: Yixun Lan <dlan@kernel.org>
---
drivers/usb/dwc3/dwc3-generic-plat.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/usb/dwc3/dwc3-generic-plat.c b/drivers/usb/dwc3/dwc3-generic-plat.c
index e846844e0023..28219968b8b0 100644
--- a/drivers/usb/dwc3/dwc3-generic-plat.c
+++ b/drivers/usb/dwc3/dwc3-generic-plat.c
@@ -212,6 +212,7 @@ static const struct dwc3_generic_config eic7700_dwc3 = {
static const struct of_device_id dwc3_generic_of_match[] = {
{ .compatible = "spacemit,k1-dwc3", },
+ { .compatible = "spacemit,k3-dwc3", },
{ .compatible = "fsl,ls1028a-dwc3", &fsl_ls1028_dwc3},
{ .compatible = "eswin,eic7700-dwc3", &eic7700_dwc3},
{ /* sentinel */ }
--
2.53.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v2 1/2] dt-bindings: usb: dwc3: spacemit: add support for K3 SoC
2026-03-20 7:15 ` [PATCH v2 1/2] dt-bindings: usb: dwc3: spacemit: add support for K3 SoC Yixun Lan
@ 2026-03-20 17:30 ` Conor Dooley
0 siblings, 0 replies; 4+ messages in thread
From: Conor Dooley @ 2026-03-20 17:30 UTC (permalink / raw)
To: Yixun Lan
Cc: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Ze Huang, Thinh Nguyen, Emil Renner Berthing,
Junzhong Pan, Inochi Amaoto, spacemit, linux-kernel, linux-usb,
devicetree, linux-riscv
[-- Attachment #1: Type: text/plain, Size: 670 bytes --]
On Fri, Mar 20, 2026 at 07:15:37AM +0000, Yixun Lan wrote:
> Add compatible string for DWC3 USB controller found in SpacemiT K3 SoC.
>
> The USB2.0 host controller in K3 SoC actually use DWC3 IP but only support
> USB2.0 functionality, thus in the hardware layer, it has only one USB2 PHY.
> While in K1 SoC, the USB controller has both USB2 and USB3 Combo PHY
> connected, but able to work in a reduced USB2.0 mode which requres only
> one USB2 PHY, leaves the USB3 Combo PHY to PCIe controller. So both K1
> and K3 SoC are able to work in the USB2.0 mode which requires one PHY.
Acked-by: Conor Dooley <conor.dooley@microchip.com>
pw-bot: not-applicable
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-03-20 17:30 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-20 7:15 [PATCH v2 0/2] usb: spacemit: k3: Add USB2.0 support Yixun Lan
2026-03-20 7:15 ` [PATCH v2 1/2] dt-bindings: usb: dwc3: spacemit: add support for K3 SoC Yixun Lan
2026-03-20 17:30 ` Conor Dooley
2026-03-20 7:15 ` [PATCH v2 2/2] usb: dwc3: dwc3-generic-plat: " Yixun Lan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox