Hi Alexander,
On 27/3/23 16:27, Alexander Stein wrote:
Hi Greg,
Am Montag, 27. März 2023, 06:50:37 CEST schrieb Greg Ungerer:
On 2/3/22 17:13, Peng Fan wrote:
From: Peng Fan <peng.fan@xxxxxxx>
Add interconnect property for hsio blk ctrl
Signed-off-by: Peng Fan <peng.fan@xxxxxxx>
---
> arch/arm64/boot/dts/freescale/imx8mp.dtsi | 5 +++++
> 1 file changed, 5 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
b/arch/arm64/boot/dts/freescale/imx8mp.dtsi index
08bd57742294..9cceeeeb26be 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
@@ -1109,6 +1109,11 @@ hsio_blk_ctrl: blk-ctrl@32f10000 {
<&pgc_hsiomix>,
<&pgc_pcie_phy>;
power-domain-names = "bus", "usb",
"usb-phy1",
"usb-phy2",
"pcie", "pcie-phy";
+ interconnects = <&noc
IMX8MP_ICM_NOC_PCIE &noc IMX8MP_ICN_HSIO>,
+ <&noc
IMX8MP_ICM_USB1 &noc IMX8MP_ICN_HSIO>,
+ <&noc
IMX8MP_ICM_USB2 &noc IMX8MP_ICN_HSIO>,
+ <&noc
IMX8MP_ICM_PCIE &noc IMX8MP_ICN_HSIO>;
+ interconnect-names = "noc-pcie",
"usb1", "usb2", "pcie";
#power-domain-cells = <1>;
};
};
This change completely breaks USB for me on a new iMX8mp platform I am
working with. Before this change normal USB probe looks good:
xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
xhci-hcd xhci-hcd.0.auto: hcc params 0x0220fe6d hci version 0x110 quirks
0x0000000000010010 xhci-hcd xhci-hcd.0.auto: irq 206, io mem 0x38100000
xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
xhci-hcd xhci-hcd.0.auto: Host supports USB 3.0 SuperSpeed
usb usb1: New USB device found, idVendor=1d6b, idProduct=0002,
bcdDevice= 6.03 usb usb1: New USB device strings: Mfr=3, Product=2,
SerialNumber=1 usb usb1: Product: xHCI Host Controller
usb usb1: Manufacturer: Linux 6.3.0-rc4-dirty xhci-hcd
....
But after this commit is applied, no USB probe messages at all.
USB worked fine in 6.0 for me, but when I switched up to 6.1 USB was broken,
I bisected to this as being the offending commit. This is still broken for
me in todays 6.3-rc4. If I revert this change (and only this change) USB
works again.
Any thoughts on why this breaks USB?
Maybe you are missing CONFIG_INTERCONNECT_IMX8MP?
No, it is enabled. From my config:
CONFIG_INTERCONNECT=y
CONFIG_INTERCONNECT_IMX=y
# CONFIG_INTERCONNECT_IMX8MM is not set
# CONFIG_INTERCONNECT_IMX8MN is not set
# CONFIG_INTERCONNECT_IMX8MQ is not set
CONFIG_INTERCONNECT_IMX8MP=y
Regards
Greg