All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH V4 0/3] ARM: dts: bcm2711: Add BCM2711 xHCI support
@ 2023-12-05 20:05 ` Stefan Wahren
  0 siblings, 0 replies; 18+ messages in thread
From: Stefan Wahren @ 2023-12-05 20:05 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Florian Fainelli, Mathias Nyman
  Cc: bcm-kernel-feedback-list, Cyril Brulebois, linux-usb, devicetree,
	linux-arm-kernel, Stefan Wahren

In contrast to the Raspberry Pi 4, the Compute Module 4 or the IO board
does not have a VL805 USB 3.0 host controller, which is connected via
PCIe. Instead, the Compute Module provides the built-in
xHCI of the BCM2711 SoC.

Changes in V4:
- use "brcm,xhci-brcm-v2" as fallback compatible as suggested by
  Conor & Florian

Changes in V3:
- introduce a new compatible for BCM2711 in order to make the
  power domain dependency SoC specific, which also results in
  a driver change

Changes in V2:
- adjust xHCI compatible as suggested by Justin & Florian
- keep xHCI disabled in order to let the bootloader decide which
  USB block should be enabled, which result in a drop of patch 3

Stefan Wahren (3):
  dt-bindings: usb: xhci: add support for BCM2711
  usb: xhci: xhci-plat: Add support for BCM2711
  ARM: dts: bcm2711: Add BCM2711 xHCI support

 .../devicetree/bindings/usb/generic-xhci.yaml | 25 ++++++++++++++++---
 arch/arm/boot/dts/broadcom/bcm2711-rpi.dtsi   |  5 ++++
 arch/arm/boot/dts/broadcom/bcm2711.dtsi       | 14 +++++++++++
 drivers/usb/host/xhci-plat.c                  |  3 +++
 4 files changed, 44 insertions(+), 3 deletions(-)

--
2.34.1


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

* [PATCH V4 0/3] ARM: dts: bcm2711: Add BCM2711 xHCI support
@ 2023-12-05 20:05 ` Stefan Wahren
  0 siblings, 0 replies; 18+ messages in thread
From: Stefan Wahren @ 2023-12-05 20:05 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Florian Fainelli, Mathias Nyman
  Cc: bcm-kernel-feedback-list, Cyril Brulebois, linux-usb, devicetree,
	linux-arm-kernel, Stefan Wahren

In contrast to the Raspberry Pi 4, the Compute Module 4 or the IO board
does not have a VL805 USB 3.0 host controller, which is connected via
PCIe. Instead, the Compute Module provides the built-in
xHCI of the BCM2711 SoC.

Changes in V4:
- use "brcm,xhci-brcm-v2" as fallback compatible as suggested by
  Conor & Florian

Changes in V3:
- introduce a new compatible for BCM2711 in order to make the
  power domain dependency SoC specific, which also results in
  a driver change

Changes in V2:
- adjust xHCI compatible as suggested by Justin & Florian
- keep xHCI disabled in order to let the bootloader decide which
  USB block should be enabled, which result in a drop of patch 3

Stefan Wahren (3):
  dt-bindings: usb: xhci: add support for BCM2711
  usb: xhci: xhci-plat: Add support for BCM2711
  ARM: dts: bcm2711: Add BCM2711 xHCI support

 .../devicetree/bindings/usb/generic-xhci.yaml | 25 ++++++++++++++++---
 arch/arm/boot/dts/broadcom/bcm2711-rpi.dtsi   |  5 ++++
 arch/arm/boot/dts/broadcom/bcm2711.dtsi       | 14 +++++++++++
 drivers/usb/host/xhci-plat.c                  |  3 +++
 4 files changed, 44 insertions(+), 3 deletions(-)

--
2.34.1


_______________________________________________
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] 18+ messages in thread

* [PATCH V4 1/3] dt-bindings: usb: xhci: Add support for BCM2711
  2023-12-05 20:05 ` Stefan Wahren
@ 2023-12-05 20:05   ` Stefan Wahren
  -1 siblings, 0 replies; 18+ messages in thread
From: Stefan Wahren @ 2023-12-05 20:05 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Florian Fainelli, Mathias Nyman
  Cc: bcm-kernel-feedback-list, Cyril Brulebois, linux-usb, devicetree,
	linux-arm-kernel, Stefan Wahren, Conor Dooley

The xHCI IP on the BCM2711 SoC is compatible to "brcm,xhci-brcm-v2",
but also requires a power domain. So introduce a new compatible
and the specific constraints. Since the key allOf can only occur
once, merge the reference below.

Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
---
 .../devicetree/bindings/usb/generic-xhci.yaml | 25 ++++++++++++++++---
 1 file changed, 22 insertions(+), 3 deletions(-)

diff --git a/Documentation/devicetree/bindings/usb/generic-xhci.yaml b/Documentation/devicetree/bindings/usb/generic-xhci.yaml
index 594ebb3ee432..6ceafa4af292 100644
--- a/Documentation/devicetree/bindings/usb/generic-xhci.yaml
+++ b/Documentation/devicetree/bindings/usb/generic-xhci.yaml
@@ -9,9 +9,6 @@ title: USB xHCI Controller
 maintainers:
   - Mathias Nyman <mathias.nyman@intel.com>

-allOf:
-  - $ref: usb-xhci.yaml#
-
 properties:
   compatible:
     oneOf:
@@ -25,6 +22,11 @@ properties:
               - marvell,armada-380-xhci
               - marvell,armada-8k-xhci
           - const: generic-xhci
+      - description: Broadcom SoCs with power domains
+        items:
+          - enum:
+              - brcm,bcm2711-xhci
+          - const: brcm,xhci-brcm-v2
       - description: Broadcom STB SoCs with xHCI
         enum:
           - brcm,xhci-brcm-v2
@@ -49,6 +51,9 @@ properties:
       - const: core
       - const: reg

+  power-domains:
+    maxItems: 1
+
 unevaluatedProperties: false

 required:
@@ -56,6 +61,20 @@ required:
   - reg
   - interrupts

+allOf:
+  - $ref: usb-xhci.yaml#
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: brcm,bcm2711-xhci
+    then:
+      required:
+        - power-domains
+    else:
+      properties:
+        power-domains: false
+
 examples:
   - |
     usb@f0931000 {
--
2.34.1


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

* [PATCH V4 1/3] dt-bindings: usb: xhci: Add support for BCM2711
@ 2023-12-05 20:05   ` Stefan Wahren
  0 siblings, 0 replies; 18+ messages in thread
From: Stefan Wahren @ 2023-12-05 20:05 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Florian Fainelli, Mathias Nyman
  Cc: bcm-kernel-feedback-list, Cyril Brulebois, linux-usb, devicetree,
	linux-arm-kernel, Stefan Wahren, Conor Dooley

The xHCI IP on the BCM2711 SoC is compatible to "brcm,xhci-brcm-v2",
but also requires a power domain. So introduce a new compatible
and the specific constraints. Since the key allOf can only occur
once, merge the reference below.

Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
---
 .../devicetree/bindings/usb/generic-xhci.yaml | 25 ++++++++++++++++---
 1 file changed, 22 insertions(+), 3 deletions(-)

diff --git a/Documentation/devicetree/bindings/usb/generic-xhci.yaml b/Documentation/devicetree/bindings/usb/generic-xhci.yaml
index 594ebb3ee432..6ceafa4af292 100644
--- a/Documentation/devicetree/bindings/usb/generic-xhci.yaml
+++ b/Documentation/devicetree/bindings/usb/generic-xhci.yaml
@@ -9,9 +9,6 @@ title: USB xHCI Controller
 maintainers:
   - Mathias Nyman <mathias.nyman@intel.com>

-allOf:
-  - $ref: usb-xhci.yaml#
-
 properties:
   compatible:
     oneOf:
@@ -25,6 +22,11 @@ properties:
               - marvell,armada-380-xhci
               - marvell,armada-8k-xhci
           - const: generic-xhci
+      - description: Broadcom SoCs with power domains
+        items:
+          - enum:
+              - brcm,bcm2711-xhci
+          - const: brcm,xhci-brcm-v2
       - description: Broadcom STB SoCs with xHCI
         enum:
           - brcm,xhci-brcm-v2
@@ -49,6 +51,9 @@ properties:
       - const: core
       - const: reg

+  power-domains:
+    maxItems: 1
+
 unevaluatedProperties: false

 required:
@@ -56,6 +61,20 @@ required:
   - reg
   - interrupts

+allOf:
+  - $ref: usb-xhci.yaml#
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: brcm,bcm2711-xhci
+    then:
+      required:
+        - power-domains
+    else:
+      properties:
+        power-domains: false
+
 examples:
   - |
     usb@f0931000 {
--
2.34.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] 18+ messages in thread

* [PATCH V4 2/3] usb: xhci: xhci-plat: Add support for BCM2711
  2023-12-05 20:05 ` Stefan Wahren
@ 2023-12-05 20:05   ` Stefan Wahren
  -1 siblings, 0 replies; 18+ messages in thread
From: Stefan Wahren @ 2023-12-05 20:05 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Florian Fainelli, Mathias Nyman
  Cc: bcm-kernel-feedback-list, Cyril Brulebois, linux-usb, devicetree,
	linux-arm-kernel, Stefan Wahren

With the introduction of a BCM2711 specific compatible, this also
needs to be added to the xHCI driver.

Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
---
 drivers/usb/host/xhci-plat.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci-plat.c
index b93161374293..bc5e8f4cdadf 100644
--- a/drivers/usb/host/xhci-plat.c
+++ b/drivers/usb/host/xhci-plat.c
@@ -129,6 +129,9 @@ static const struct of_device_id usb_xhci_of_match[] = {
 	}, {
 		.compatible = "brcm,xhci-brcm-v2",
 		.data = &xhci_plat_brcm,
+	}, {
+		.compatible = "brcm,bcm2711-xhci",
+		.data = &xhci_plat_brcm,
 	}, {
 		.compatible = "brcm,bcm7445-xhci",
 		.data = &xhci_plat_brcm,
--
2.34.1


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

* [PATCH V4 2/3] usb: xhci: xhci-plat: Add support for BCM2711
@ 2023-12-05 20:05   ` Stefan Wahren
  0 siblings, 0 replies; 18+ messages in thread
From: Stefan Wahren @ 2023-12-05 20:05 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Florian Fainelli, Mathias Nyman
  Cc: bcm-kernel-feedback-list, Cyril Brulebois, linux-usb, devicetree,
	linux-arm-kernel, Stefan Wahren

With the introduction of a BCM2711 specific compatible, this also
needs to be added to the xHCI driver.

Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
---
 drivers/usb/host/xhci-plat.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci-plat.c
index b93161374293..bc5e8f4cdadf 100644
--- a/drivers/usb/host/xhci-plat.c
+++ b/drivers/usb/host/xhci-plat.c
@@ -129,6 +129,9 @@ static const struct of_device_id usb_xhci_of_match[] = {
 	}, {
 		.compatible = "brcm,xhci-brcm-v2",
 		.data = &xhci_plat_brcm,
+	}, {
+		.compatible = "brcm,bcm2711-xhci",
+		.data = &xhci_plat_brcm,
 	}, {
 		.compatible = "brcm,bcm7445-xhci",
 		.data = &xhci_plat_brcm,
--
2.34.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] 18+ messages in thread

* [PATCH V4 3/3] ARM: dts: bcm2711: Add BCM2711 xHCI support
  2023-12-05 20:05 ` Stefan Wahren
@ 2023-12-05 20:05   ` Stefan Wahren
  -1 siblings, 0 replies; 18+ messages in thread
From: Stefan Wahren @ 2023-12-05 20:05 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Florian Fainelli, Mathias Nyman
  Cc: bcm-kernel-feedback-list, Cyril Brulebois, linux-usb, devicetree,
	linux-arm-kernel, Stefan Wahren

The BCM2711 SoC also has a mostly generic xHCI. The USB port is
currently only usable on the Compute Module 4 (e.g. via IO board).
Because DWC2 and xHCI share the same PHY, we let the bootloader
enable it on demand.

Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
---
 arch/arm/boot/dts/broadcom/bcm2711-rpi.dtsi |  5 +++++
 arch/arm/boot/dts/broadcom/bcm2711.dtsi     | 14 ++++++++++++++
 2 files changed, 19 insertions(+)

diff --git a/arch/arm/boot/dts/broadcom/bcm2711-rpi.dtsi b/arch/arm/boot/dts/broadcom/bcm2711-rpi.dtsi
index 98817a6675b9..d233a191c139 100644
--- a/arch/arm/boot/dts/broadcom/bcm2711-rpi.dtsi
+++ b/arch/arm/boot/dts/broadcom/bcm2711-rpi.dtsi
@@ -1,6 +1,7 @@
 // SPDX-License-Identifier: GPL-2.0
 #include "bcm2835-rpi.dtsi"

+#include <dt-bindings/power/raspberrypi-power.h>
 #include <dt-bindings/reset/raspberrypi,firmware-reset.h>

 / {
@@ -76,3 +77,7 @@ &v3d {
 &vchiq {
 	interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
 };
+
+&xhci {
+	power-domains = <&power RPI_POWER_DOMAIN_USB>;
+};
diff --git a/arch/arm/boot/dts/broadcom/bcm2711.dtsi b/arch/arm/boot/dts/broadcom/bcm2711.dtsi
index 4a379a14966d..22c7f1561344 100644
--- a/arch/arm/boot/dts/broadcom/bcm2711.dtsi
+++ b/arch/arm/boot/dts/broadcom/bcm2711.dtsi
@@ -604,6 +604,20 @@ genet_mdio: mdio@e14 {
 			};
 		};

+		xhci: usb@7e9c0000 {
+			compatible = "brcm,bcm2711-xhci", "brcm,xhci-brcm-v2";
+			reg = <0x0 0x7e9c0000 0x100000>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+			interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>;
+			/* DWC2 and this IP block share the same USB PHY,
+			 * enabling both at the same time results in lockups.
+			 * So keep this node disabled and let the bootloader
+			 * decide which interface should be enabled.
+			 */
+			status = "disabled";
+		};
+
 		v3d: gpu@7ec00000 {
 			compatible = "brcm,2711-v3d";
 			reg = <0x0 0x7ec00000 0x4000>,
--
2.34.1


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

* [PATCH V4 3/3] ARM: dts: bcm2711: Add BCM2711 xHCI support
@ 2023-12-05 20:05   ` Stefan Wahren
  0 siblings, 0 replies; 18+ messages in thread
From: Stefan Wahren @ 2023-12-05 20:05 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Florian Fainelli, Mathias Nyman
  Cc: bcm-kernel-feedback-list, Cyril Brulebois, linux-usb, devicetree,
	linux-arm-kernel, Stefan Wahren

The BCM2711 SoC also has a mostly generic xHCI. The USB port is
currently only usable on the Compute Module 4 (e.g. via IO board).
Because DWC2 and xHCI share the same PHY, we let the bootloader
enable it on demand.

Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
---
 arch/arm/boot/dts/broadcom/bcm2711-rpi.dtsi |  5 +++++
 arch/arm/boot/dts/broadcom/bcm2711.dtsi     | 14 ++++++++++++++
 2 files changed, 19 insertions(+)

diff --git a/arch/arm/boot/dts/broadcom/bcm2711-rpi.dtsi b/arch/arm/boot/dts/broadcom/bcm2711-rpi.dtsi
index 98817a6675b9..d233a191c139 100644
--- a/arch/arm/boot/dts/broadcom/bcm2711-rpi.dtsi
+++ b/arch/arm/boot/dts/broadcom/bcm2711-rpi.dtsi
@@ -1,6 +1,7 @@
 // SPDX-License-Identifier: GPL-2.0
 #include "bcm2835-rpi.dtsi"

+#include <dt-bindings/power/raspberrypi-power.h>
 #include <dt-bindings/reset/raspberrypi,firmware-reset.h>

 / {
@@ -76,3 +77,7 @@ &v3d {
 &vchiq {
 	interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
 };
+
+&xhci {
+	power-domains = <&power RPI_POWER_DOMAIN_USB>;
+};
diff --git a/arch/arm/boot/dts/broadcom/bcm2711.dtsi b/arch/arm/boot/dts/broadcom/bcm2711.dtsi
index 4a379a14966d..22c7f1561344 100644
--- a/arch/arm/boot/dts/broadcom/bcm2711.dtsi
+++ b/arch/arm/boot/dts/broadcom/bcm2711.dtsi
@@ -604,6 +604,20 @@ genet_mdio: mdio@e14 {
 			};
 		};

+		xhci: usb@7e9c0000 {
+			compatible = "brcm,bcm2711-xhci", "brcm,xhci-brcm-v2";
+			reg = <0x0 0x7e9c0000 0x100000>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+			interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>;
+			/* DWC2 and this IP block share the same USB PHY,
+			 * enabling both at the same time results in lockups.
+			 * So keep this node disabled and let the bootloader
+			 * decide which interface should be enabled.
+			 */
+			status = "disabled";
+		};
+
 		v3d: gpu@7ec00000 {
 			compatible = "brcm,2711-v3d";
 			reg = <0x0 0x7ec00000 0x4000>,
--
2.34.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] 18+ messages in thread

* Re: [PATCH V4 1/3] dt-bindings: usb: xhci: Add support for BCM2711
  2023-12-05 20:05   ` Stefan Wahren
@ 2023-12-05 22:51     ` Florian Fainelli
  -1 siblings, 0 replies; 18+ messages in thread
From: Florian Fainelli @ 2023-12-05 22:51 UTC (permalink / raw)
  To: Stefan Wahren, Greg Kroah-Hartman, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Mathias Nyman
  Cc: bcm-kernel-feedback-list, Cyril Brulebois, linux-usb, devicetree,
	linux-arm-kernel, Conor Dooley

[-- Attachment #1: Type: text/plain, Size: 464 bytes --]

On 12/5/23 12:05, Stefan Wahren wrote:
> The xHCI IP on the BCM2711 SoC is compatible to "brcm,xhci-brcm-v2",
> but also requires a power domain. So introduce a new compatible
> and the specific constraints. Since the key allOf can only occur
> once, merge the reference below.
> 
> Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
> Reviewed-by: Conor Dooley <conor.dooley@microchip.com>

Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
-- 
Florian


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4221 bytes --]

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

* Re: [PATCH V4 1/3] dt-bindings: usb: xhci: Add support for BCM2711
@ 2023-12-05 22:51     ` Florian Fainelli
  0 siblings, 0 replies; 18+ messages in thread
From: Florian Fainelli @ 2023-12-05 22:51 UTC (permalink / raw)
  To: Stefan Wahren, Greg Kroah-Hartman, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Mathias Nyman
  Cc: bcm-kernel-feedback-list, Cyril Brulebois, linux-usb, devicetree,
	linux-arm-kernel, Conor Dooley


[-- Attachment #1.1: Type: text/plain, Size: 464 bytes --]

On 12/5/23 12:05, Stefan Wahren wrote:
> The xHCI IP on the BCM2711 SoC is compatible to "brcm,xhci-brcm-v2",
> but also requires a power domain. So introduce a new compatible
> and the specific constraints. Since the key allOf can only occur
> once, merge the reference below.
> 
> Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
> Reviewed-by: Conor Dooley <conor.dooley@microchip.com>

Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
-- 
Florian


[-- Attachment #1.2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4221 bytes --]

[-- Attachment #2: Type: text/plain, Size: 176 bytes --]

_______________________________________________
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] 18+ messages in thread

* Re: [PATCH V4 2/3] usb: xhci: xhci-plat: Add support for BCM2711
  2023-12-05 20:05   ` Stefan Wahren
@ 2023-12-05 22:53     ` Florian Fainelli
  -1 siblings, 0 replies; 18+ messages in thread
From: Florian Fainelli @ 2023-12-05 22:53 UTC (permalink / raw)
  To: Stefan Wahren, Greg Kroah-Hartman, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Mathias Nyman
  Cc: bcm-kernel-feedback-list, Cyril Brulebois, linux-usb, devicetree,
	linux-arm-kernel

[-- Attachment #1: Type: text/plain, Size: 336 bytes --]

On 12/5/23 12:05, Stefan Wahren wrote:
> With the introduction of a BCM2711 specific compatible, this also
> needs to be added to the xHCI driver.
> 
> Signed-off-by: Stefan Wahren <wahrenst@gmx.net>

Tested-by: Florian Fainelli <florian.fainelli@broadcom.com>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
-- 
Florian


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4221 bytes --]

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

* Re: [PATCH V4 2/3] usb: xhci: xhci-plat: Add support for BCM2711
@ 2023-12-05 22:53     ` Florian Fainelli
  0 siblings, 0 replies; 18+ messages in thread
From: Florian Fainelli @ 2023-12-05 22:53 UTC (permalink / raw)
  To: Stefan Wahren, Greg Kroah-Hartman, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Mathias Nyman
  Cc: bcm-kernel-feedback-list, Cyril Brulebois, linux-usb, devicetree,
	linux-arm-kernel


[-- Attachment #1.1: Type: text/plain, Size: 336 bytes --]

On 12/5/23 12:05, Stefan Wahren wrote:
> With the introduction of a BCM2711 specific compatible, this also
> needs to be added to the xHCI driver.
> 
> Signed-off-by: Stefan Wahren <wahrenst@gmx.net>

Tested-by: Florian Fainelli <florian.fainelli@broadcom.com>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
-- 
Florian


[-- Attachment #1.2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4221 bytes --]

[-- Attachment #2: Type: text/plain, Size: 176 bytes --]

_______________________________________________
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] 18+ messages in thread

* Re: [PATCH V4 3/3] ARM: dts: bcm2711: Add BCM2711 xHCI support
  2023-12-05 20:05   ` Stefan Wahren
@ 2023-12-05 22:53     ` Florian Fainelli
  -1 siblings, 0 replies; 18+ messages in thread
From: Florian Fainelli @ 2023-12-05 22:53 UTC (permalink / raw)
  To: Stefan Wahren, Greg Kroah-Hartman, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Mathias Nyman
  Cc: bcm-kernel-feedback-list, Cyril Brulebois, linux-usb, devicetree,
	linux-arm-kernel

[-- Attachment #1: Type: text/plain, Size: 452 bytes --]

On 12/5/23 12:05, Stefan Wahren wrote:
> The BCM2711 SoC also has a mostly generic xHCI. The USB port is
> currently only usable on the Compute Module 4 (e.g. via IO board).
> Because DWC2 and xHCI share the same PHY, we let the bootloader
> enable it on demand.
> 
> Signed-off-by: Stefan Wahren <wahrenst@gmx.net>

Tested-by: Florian Fainelli <florian.fainelli@broadcom.com>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
-- 
Florian


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4221 bytes --]

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

* Re: [PATCH V4 3/3] ARM: dts: bcm2711: Add BCM2711 xHCI support
@ 2023-12-05 22:53     ` Florian Fainelli
  0 siblings, 0 replies; 18+ messages in thread
From: Florian Fainelli @ 2023-12-05 22:53 UTC (permalink / raw)
  To: Stefan Wahren, Greg Kroah-Hartman, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Mathias Nyman
  Cc: bcm-kernel-feedback-list, Cyril Brulebois, linux-usb, devicetree,
	linux-arm-kernel


[-- Attachment #1.1: Type: text/plain, Size: 452 bytes --]

On 12/5/23 12:05, Stefan Wahren wrote:
> The BCM2711 SoC also has a mostly generic xHCI. The USB port is
> currently only usable on the Compute Module 4 (e.g. via IO board).
> Because DWC2 and xHCI share the same PHY, we let the bootloader
> enable it on demand.
> 
> Signed-off-by: Stefan Wahren <wahrenst@gmx.net>

Tested-by: Florian Fainelli <florian.fainelli@broadcom.com>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
-- 
Florian


[-- Attachment #1.2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4221 bytes --]

[-- Attachment #2: Type: text/plain, Size: 176 bytes --]

_______________________________________________
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] 18+ messages in thread

* Re: [PATCH V4 0/3] ARM: dts: bcm2711: Add BCM2711 xHCI support
  2023-12-05 20:05 ` Stefan Wahren
@ 2023-12-12 19:09   ` Cyril Brulebois
  -1 siblings, 0 replies; 18+ messages in thread
From: Cyril Brulebois @ 2023-12-12 19:09 UTC (permalink / raw)
  To: Stefan Wahren
  Cc: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Florian Fainelli, Mathias Nyman,
	bcm-kernel-feedback-list, linux-usb, devicetree,
	linux-arm-kernel

[-- Attachment #1: Type: text/plain, Size: 1710 bytes --]

Stefan Wahren <wahrenst@gmx.net> (2023-12-05):
> In contrast to the Raspberry Pi 4, the Compute Module 4 or the IO board
> does not have a VL805 USB 3.0 host controller, which is connected via
> PCIe. Instead, the Compute Module provides the built-in
> xHCI of the BCM2711 SoC.
> 
> Changes in V4:
> - use "brcm,xhci-brcm-v2" as fallback compatible as suggested by
>   Conor & Florian
> 
> Changes in V3:
> - introduce a new compatible for BCM2711 in order to make the
>   power domain dependency SoC specific, which also results in
>   a driver change

This is still:

Tested-by: Cyril Brulebois <cyril@debamax.com>


Again, I'm also applying Jim Quinlan's PCIe patch series v8, to be able
to fully test what happens with USB devices, onboard and behind PCIe:
  https://lore.kernel.org/all/20231126201946.ffm3bhg5du2xgztv@mraw.org/

With the following on a CM4 IO Board, with a Samsung flash drive and a
USB keyboard connected to onboard USB ports:
 - CM4 Lite Rev 1.0
 - CM4 8/32 Rev 1.0
 - CM4 4/32 Rev 1.1

and using one of the three PCIe-to-USB boards referenced previously,
connecting another Samsung flash drive on one of its USB ports.

Conclusion: I can see and use onboard USB devices alongside behind-PCIe
USB devices, either with or without adding otg_mode=1 to config.txt.

On a CM4-based product that uses both onboard USB ports and PCIe-to-USB
ports, all USB components still work fine (3 RF adapters, 1 modem), with
or without otg_mode=1.

(All of this is still with a Debian 12 arm64 user space.)


Cheers,
-- 
Cyril Brulebois (kibi@debian.org)            <https://debamax.com/>
D-I release manager -- Release team member -- Freelance Consultant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* Re: [PATCH V4 0/3] ARM: dts: bcm2711: Add BCM2711 xHCI support
@ 2023-12-12 19:09   ` Cyril Brulebois
  0 siblings, 0 replies; 18+ messages in thread
From: Cyril Brulebois @ 2023-12-12 19:09 UTC (permalink / raw)
  To: Stefan Wahren
  Cc: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Florian Fainelli, Mathias Nyman,
	bcm-kernel-feedback-list, linux-usb, devicetree,
	linux-arm-kernel


[-- Attachment #1.1: Type: text/plain, Size: 1710 bytes --]

Stefan Wahren <wahrenst@gmx.net> (2023-12-05):
> In contrast to the Raspberry Pi 4, the Compute Module 4 or the IO board
> does not have a VL805 USB 3.0 host controller, which is connected via
> PCIe. Instead, the Compute Module provides the built-in
> xHCI of the BCM2711 SoC.
> 
> Changes in V4:
> - use "brcm,xhci-brcm-v2" as fallback compatible as suggested by
>   Conor & Florian
> 
> Changes in V3:
> - introduce a new compatible for BCM2711 in order to make the
>   power domain dependency SoC specific, which also results in
>   a driver change

This is still:

Tested-by: Cyril Brulebois <cyril@debamax.com>


Again, I'm also applying Jim Quinlan's PCIe patch series v8, to be able
to fully test what happens with USB devices, onboard and behind PCIe:
  https://lore.kernel.org/all/20231126201946.ffm3bhg5du2xgztv@mraw.org/

With the following on a CM4 IO Board, with a Samsung flash drive and a
USB keyboard connected to onboard USB ports:
 - CM4 Lite Rev 1.0
 - CM4 8/32 Rev 1.0
 - CM4 4/32 Rev 1.1

and using one of the three PCIe-to-USB boards referenced previously,
connecting another Samsung flash drive on one of its USB ports.

Conclusion: I can see and use onboard USB devices alongside behind-PCIe
USB devices, either with or without adding otg_mode=1 to config.txt.

On a CM4-based product that uses both onboard USB ports and PCIe-to-USB
ports, all USB components still work fine (3 RF adapters, 1 modem), with
or without otg_mode=1.

(All of this is still with a Debian 12 arm64 user space.)


Cheers,
-- 
Cyril Brulebois (kibi@debian.org)            <https://debamax.com/>
D-I release manager -- Release team member -- Freelance Consultant

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

[-- Attachment #2: Type: text/plain, Size: 176 bytes --]

_______________________________________________
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] 18+ messages in thread

* Re: [PATCH V4 0/3] ARM: dts: bcm2711: Add BCM2711 xHCI support
  2023-12-12 19:09   ` Cyril Brulebois
@ 2023-12-12 19:16     ` Stefan Wahren
  -1 siblings, 0 replies; 18+ messages in thread
From: Stefan Wahren @ 2023-12-12 19:16 UTC (permalink / raw)
  To: Cyril Brulebois
  Cc: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Florian Fainelli, Mathias Nyman,
	bcm-kernel-feedback-list, linux-usb, devicetree,
	linux-arm-kernel

Hi Cyril,

Am 12.12.23 um 20:09 schrieb Cyril Brulebois:
> Stefan Wahren <wahrenst@gmx.net> (2023-12-05):
>> In contrast to the Raspberry Pi 4, the Compute Module 4 or the IO board
>> does not have a VL805 USB 3.0 host controller, which is connected via
>> PCIe. Instead, the Compute Module provides the built-in
>> xHCI of the BCM2711 SoC.
>>
>> Changes in V4:
>> - use "brcm,xhci-brcm-v2" as fallback compatible as suggested by
>>    Conor & Florian
>>
>> Changes in V3:
>> - introduce a new compatible for BCM2711 in order to make the
>>    power domain dependency SoC specific, which also results in
>>    a driver change
> This is still:
>
> Tested-by: Cyril Brulebois <cyril@debamax.com>
thank you very much for your efforts. The series has been already
applied by Greg.

https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/log/?h=usb-next
>
>
> Again, I'm also applying Jim Quinlan's PCIe patch series v8, to be able
> to fully test what happens with USB devices, onboard and behind PCIe:
>    https://lore.kernel.org/all/20231126201946.ffm3bhg5du2xgztv@mraw.org/
>
> With the following on a CM4 IO Board, with a Samsung flash drive and a
> USB keyboard connected to onboard USB ports:
>   - CM4 Lite Rev 1.0
>   - CM4 8/32 Rev 1.0
>   - CM4 4/32 Rev 1.1
>
> and using one of the three PCIe-to-USB boards referenced previously,
> connecting another Samsung flash drive on one of its USB ports.
>
> Conclusion: I can see and use onboard USB devices alongside behind-PCIe
> USB devices, either with or without adding otg_mode=1 to config.txt.
>
> On a CM4-based product that uses both onboard USB ports and PCIe-to-USB
> ports, all USB components still work fine (3 RF adapters, 1 modem), with
> or without otg_mode=1.
>
> (All of this is still with a Debian 12 arm64 user space.)
>
>
> Cheers,
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel


_______________________________________________
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] 18+ messages in thread

* Re: [PATCH V4 0/3] ARM: dts: bcm2711: Add BCM2711 xHCI support
@ 2023-12-12 19:16     ` Stefan Wahren
  0 siblings, 0 replies; 18+ messages in thread
From: Stefan Wahren @ 2023-12-12 19:16 UTC (permalink / raw)
  To: Cyril Brulebois
  Cc: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Florian Fainelli, Mathias Nyman,
	bcm-kernel-feedback-list, linux-usb, devicetree,
	linux-arm-kernel

Hi Cyril,

Am 12.12.23 um 20:09 schrieb Cyril Brulebois:
> Stefan Wahren <wahrenst@gmx.net> (2023-12-05):
>> In contrast to the Raspberry Pi 4, the Compute Module 4 or the IO board
>> does not have a VL805 USB 3.0 host controller, which is connected via
>> PCIe. Instead, the Compute Module provides the built-in
>> xHCI of the BCM2711 SoC.
>>
>> Changes in V4:
>> - use "brcm,xhci-brcm-v2" as fallback compatible as suggested by
>>    Conor & Florian
>>
>> Changes in V3:
>> - introduce a new compatible for BCM2711 in order to make the
>>    power domain dependency SoC specific, which also results in
>>    a driver change
> This is still:
>
> Tested-by: Cyril Brulebois <cyril@debamax.com>
thank you very much for your efforts. The series has been already
applied by Greg.

https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/log/?h=usb-next
>
>
> Again, I'm also applying Jim Quinlan's PCIe patch series v8, to be able
> to fully test what happens with USB devices, onboard and behind PCIe:
>    https://lore.kernel.org/all/20231126201946.ffm3bhg5du2xgztv@mraw.org/
>
> With the following on a CM4 IO Board, with a Samsung flash drive and a
> USB keyboard connected to onboard USB ports:
>   - CM4 Lite Rev 1.0
>   - CM4 8/32 Rev 1.0
>   - CM4 4/32 Rev 1.1
>
> and using one of the three PCIe-to-USB boards referenced previously,
> connecting another Samsung flash drive on one of its USB ports.
>
> Conclusion: I can see and use onboard USB devices alongside behind-PCIe
> USB devices, either with or without adding otg_mode=1 to config.txt.
>
> On a CM4-based product that uses both onboard USB ports and PCIe-to-USB
> ports, all USB components still work fine (3 RF adapters, 1 modem), with
> or without otg_mode=1.
>
> (All of this is still with a Debian 12 arm64 user space.)
>
>
> Cheers,
>
> _______________________________________________
> 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] 18+ messages in thread

end of thread, other threads:[~2023-12-12 19:18 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-12-05 20:05 [PATCH V4 0/3] ARM: dts: bcm2711: Add BCM2711 xHCI support Stefan Wahren
2023-12-05 20:05 ` Stefan Wahren
2023-12-05 20:05 ` [PATCH V4 1/3] dt-bindings: usb: xhci: Add support for BCM2711 Stefan Wahren
2023-12-05 20:05   ` Stefan Wahren
2023-12-05 22:51   ` Florian Fainelli
2023-12-05 22:51     ` Florian Fainelli
2023-12-05 20:05 ` [PATCH V4 2/3] usb: xhci: xhci-plat: " Stefan Wahren
2023-12-05 20:05   ` Stefan Wahren
2023-12-05 22:53   ` Florian Fainelli
2023-12-05 22:53     ` Florian Fainelli
2023-12-05 20:05 ` [PATCH V4 3/3] ARM: dts: bcm2711: Add BCM2711 xHCI support Stefan Wahren
2023-12-05 20:05   ` Stefan Wahren
2023-12-05 22:53   ` Florian Fainelli
2023-12-05 22:53     ` Florian Fainelli
2023-12-12 19:09 ` [PATCH V4 0/3] " Cyril Brulebois
2023-12-12 19:09   ` Cyril Brulebois
2023-12-12 19:16   ` Stefan Wahren
2023-12-12 19:16     ` Stefan Wahren

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.