[PATCH 9/9] ARM: dts: broadcom: Use noncoherent USB DMA on BCM958625HR

From: Florian Fainelli

Date: Wed Oct 21 2026 - 13:31:47 EST


The USB hosts on BCM958625HR fail when using the dma-coherent properties
inherited from bcm-nsp.dtsi. xHCI aborts commands, while EHCI and OHCI
report fatal errors during enumeration and stop servicing their shared
interrupt.

Removing these properties restores high-speed USB2 device enumeration
and SuperSpeed USB3 operation on the board. Use noncoherent DMA for all
three hosts so the ARM DMA API maintains their descriptors and buffers,
as in the downstream SDK. Limit the override to the tested board.

Fixes: 56e2ff0346a3 ("ARM: dts: NSP: Add dma-coherent to relevant DT entries")
Fixes: bbe526f55b60 ("ARM: dts: NSP: Add USB3 and USB3 PHY to NSP")
Signed-off-by: Florian Fainelli <florian.fainelli@xxxxxxxxxxxx>
---
arch/arm/boot/dts/broadcom/bcm958625hr.dts | 3 +++
1 file changed, 3 insertions(+)

diff --git a/arch/arm/boot/dts/broadcom/bcm958625hr.dts b/arch/arm/boot/dts/broadcom/bcm958625hr.dts
index 0105afeca748..c896c390f042 100644
--- a/arch/arm/boot/dts/broadcom/bcm958625hr.dts
+++ b/arch/arm/boot/dts/broadcom/bcm958625hr.dts
@@ -86,6 +86,7 @@ &amac2 {
};

&ehci0 {
+ /delete-property/ dma-coherent;
phys = <&usb3_phy>;
phy-names = "usb";
status = "okay";
@@ -130,6 +131,7 @@ partition@4000000 {
};

&ohci0 {
+ /delete-property/ dma-coherent;
phys = <&usb3_phy>;
phy-names = "usb";
status = "okay";
@@ -255,5 +257,6 @@ &usb3_phy {
};

&xhci {
+ /delete-property/ dma-coherent;
status = "okay";
};
--
2.53.0