This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DRA722: PCIe: BAR registers are not assigned with the memory region for the second device(unit).

Part Number: DRA722
Other Parts Discussed in Thread: DRA72

Hi Team,

Base Address Register for the second unit in PCIe device is not getting enumerated in the config space. Due to this, we couldn't write to the PCIe address space for the second unit.

root~# lspci -v

01:00.0 Class 0200: Device 14e4:b340 (rev 01)
Subsystem: Device 14e4:b340
Flags: bus master, fast devsel, latency 0, IRQ 180
Memory at 20840000 (64-bit, prefetchable) [size=32K]
Memory at 20800000 (64-bit, prefetchable) [size=256K]
Memory at 21000000 (64-bit, prefetchable) [size=16M]
Capabilities: [48] Power Management version 3
Capabilities: [50] Vital Product Data
Capabilities: [58] MSI: Enable- Count=1/8 Maskable- 64bit+
Capabilities: [a0] MSI-X: Enable- Count=1 Masked-
Capabilities: [ac] Express Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
Capabilities: [13c] Device Serial Number 00-00-00-00-00-00-00-00
Capabilities: [150] Power Budgeting <?>
Capabilities: [160] Virtual Channel
Capabilities: [180] Vendor Specific Information: ID=0000 Rev=0 Len=028 <?>
Capabilities: [1b0] Latency Tolerance Reporting
Kernel driver in use: linux-kernel-bde

01:00.1 Class 0200: Device 14e4:b340 (rev 01)
Subsystem: Device 14e4:b340
Flags: bus master, fast devsel, latency 0, IRQ 188
Memory at 20848000 (64-bit, prefetchable) [size=32K]
Memory at 22000000 (64-bit, prefetchable) [size=16M]
Capabilities: [48] Power Management version 3
Capabilities: [50] Vital Product Data
Capabilities: [58] MSI: Enable- Count=1/8 Maskable- 64bit+
Capabilities: [a0] MSI-X: Enable- Count=1 Masked-
Capabilities: [ac] Express Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
Capabilities: [13c] Device Serial Number 00-00-00-00-00-00-00-00
Capabilities: [150] Power Budgeting <?>
Capabilities: [160] Virtual Channel
Capabilities: [180] Vendor Specific Information: ID=0000 Rev=0 Len=028 <?>
Kernel driver in use: linux-kernel-bde

=========================================================
For unit 1 , BAR details

01:00.0
Region 0: Memory at 20840000 (64-bit, prefetchable) [size=32K]
Region 2: Memory at 20800000 (64-bit, prefetchable) [size=256K]
Region 4: Memory at 21000000 (64-bit, prefetchable) [size=16M]

=========================================================
For unit 2 , BAR details

01:00.1
Region 0: Memory at 20848000 (64-bit, prefetchable) [size=32K]
Region 4: Memory at 22000000 (64-bit, prefetchable) [size=16M]

While checking in _probe function , it verifies that BAR (regision 2) is not available for second device.
=========================================================

dmesg logs:::
==========

[ 0.658590] dra7-pcie 51000000.pcie: Linked as a consumer to phy-4a094000.pciephy.3
[ 0.658741] dra7-pcie 51000000.pcie: WA for Errata i870 not applied
[ 0.658838] OF: PCI: host bridge /ocp/axi@0/pcie@51000000 ranges:
[ 0.751028] dra7-pcie 51000000.pcie: link up
[ 0.751169] dra7-pcie 51000000.pcie: PCI host bridge to bus 0000:00
[ 0.751180] pci_bus 0000:00: root bus resource [bus 00-ff]
[ 0.751189] pci_bus 0000:00: root bus resource [io 0x0000-0xffff]
[ 0.751197] pci_bus 0000:00: root bus resource [mem 0x20013000-0x2fffffff]
[ 0.751230] pci 0000:00:00.0: [104c:8888] type 01 class 0x060400
[ 0.751261] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x000fffff 64bit]
[ 0.751318] pci 0000:00:00.0: supports D1
[ 0.751325] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
[ 0.751659] pci 0000:01:00.0: [14e4:b340] type 00 class 0x020000
[ 0.751809] pci 0000:01:00.0: reg 0x10: [mem 0x20840000-0x20847fff 64bit pref]
[ 0.751864] pci 0000:01:00.0: reg 0x18: [mem 0x20800000-0x2083ffff 64bit pref]
[ 0.751919] pci 0000:01:00.0: reg 0x20: [mem 0x21000000-0x21ffffff 64bit pref]
[ 0.752324] pci 0000:01:00.0: PME# supported from D0 D3hot D3cold
[ 0.752584] pci 0000:01:00.1: [14e4:b340] type 00 class 0x020000
[ 0.752728] pci 0000:01:00.1: reg 0x10: [mem 0x20848000-0x2084ffff 64bit pref]
[ 0.752835] pci 0000:01:00.1: reg 0x20: [mem 0x22000000-0x22ffffff 64bit pref]
[ 0.753227] pci 0000:01:00.1: PME# supported from D0 D3hot D3cold
[ 0.753521] pci 0000:00:00.0: BAR 9: assigned [mem 0x20800000-0x22ffffff pref]
[ 0.753531] pci 0000:00:00.0: BAR 0: assigned [mem 0x20100000-0x201fffff 64bit]
[ 0.753550] pci 0000:01:00.0: BAR 4: assigned [mem 0x21000000-0x21ffffff 64bit pref]
[ 0.753596] pci 0000:01:00.1: BAR 4: assigned [mem 0x22000000-0x22ffffff 64bit pref]
[ 0.753642] pci 0000:01:00.0: BAR 2: assigned [mem 0x20800000-0x2083ffff 64bit pref]
[ 0.753687] pci 0000:01:00.0: BAR 0: assigned [mem 0x20840000-0x20847fff 64bit pref]
[ 0.753732] pci 0000:01:00.1: BAR 0: assigned [mem 0x20848000-0x2084ffff 64bit pref]
[ 0.753777] pci 0000:00:00.0: PCI bridge to [bus 01-ff]
[ 0.753789] pci 0000:00:00.0: bridge window [mem 0x20800000-0x22ffffff pref]
[ 0.754088] pcieport 0000:00:00.0: Signaling PME with IRQ 146
[ 0.754209] pcieport 0000:00:00.0: AER enabled with IRQ 146
[ 0.903327] ehci-pci: EHCI PCI platform driver

=========================================================

It seems the linux kernel is not enumerating the pcie device 2 as unit and it is considering it as function from our understanding and does TI has any input to fix this BAR issue we are seeing with any patch ? We are using kernel version of 4.14.115.

Thanks,
Harivignesh GS

  • Are there any references for pcie driver  which supports  more than 1 switch chip units?

  • Harivignesh,

    Are they both exactly the same device? It's possible the 2nd BAR for the 2nd device is not configured at all? All this is handled by Linux PCIe core and nothing specific to TI platform.

    Thanks

    Kishon

  • Kishon,

    Yes. The units we are attaching are exactly similar to one another. Enumeration for the second PCIe device BAR is not happening at core kernel. We are using mainline rt-4.14.115 kernel.

    We are suspecting the configuration in device tree files for PCIe is not handled for second device in omap platform and that's why approached TI.

    Any specific changes to support both devices in same PCIe controller or in the core kernel code of TI-PCIe controller any pointers to look for this ?

    Thanks,
    Harivignesh GS

  • Kishon,

    to our configuration:

    We want use the PCIe_SS1 in single lane mode, that we can also sue PCIe_SS2.

    PCIe_SS1 connected to a PCIe device 14e4:b340

    PCIe_SS2 connected to a PCIe device 14e4:b340

    Device Tree:

    axi@0 and axi@1 status is okay

    pcie1_phy and pcie2_phy status is okay

    The question why the kernel detects both devices on axi0:

    [ 0.658590] dra7-pcie 51000000.pcie: Linked as a consumer to phy-4a094000.pciephy.3

    [ 0.751659] pci 0000:01:00.0: [14e4:b340] type 00 class 0x020000

    [ 0.752584] pci 0000:01:00.1: [14e4:b340] type 00 class 0x020000

    The Link on axi1 is no dmesg message.

    Is there something missing in our configuration missing?

    I expects that there should be something like:

    "[dra7-pcie 51800000.pcie: Linked as a consumer to phy-4a095000.pciephy.3"

    That the PCIe_SS2 address is used.

    But how can it be that it is under AXI0?

    Thanks

    Christian

  • An additional remark:

    After enabling axi@1 and pcie2_phy in dra7.dtsi, the probing of axi@1 takes place.

    But when the phy is enabled, the bootup hangs at register access: 

        reg = dra7xx_pcie_readl(dra7xxPCIECTRL_DRA7XX_CONF_DEVICE_CMD);

    [   13.702557] pinctrl-single 4a003400.pinmux: 282 pins at pa fc003400 size 1128
    [   13.792536] dra7-pcie 51000000.pcie: dra7xx_pcie_probe Start
    [   13.863224] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 671
    [   13.931703] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 676
    [   14.000174] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 683
    [   14.068642] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 688
    [   14.137113] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 693
    [   14.205623] dra7-pcie 51000000.pcie: Linked as a consumer to phy-4a094000.pciephy.3
    [   14.300829] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 707
    [   14.369296] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 713
    [   14.437763] dra7-pcie 51000000.pcie: dra7xx_pcie_enable_phy 531
    [   14.511577] dra7-pcie 51000000.pcie: dra7xx_pcie_enable_phy 533
    [   14.585440] dra7-pcie 51000000.pcie: dra7xx_pcie_enable_phy 548
    [   14.659259] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 720
    [   14.727742] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 730
    [   14.796216] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 738
    [   14.864684] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 741 0x0
    [   14.937429] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 744
    [   15.005900] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 746 0xffffffea
    [   15.086129] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 750
    [   15.154594] dra7-pcie 51000000.pcie: WA for Errata i870 not applied
    [   15.232781] OF: PCI: host bridge /ocp/axi@0/pcie@51000000 ranges:
    [   15.308764] OF: PCI:    IO 0x20003000..0x20012fff -> 0x00000000
    [   15.382595] OF: PCI:   MEM 0x20013000..0x2fffffff -> 0x20013000
    [   15.557195] dra7-pcie 51000000.pcie: link up
    [   15.610821] dra7-pcie 51000000.pcie: PCI host bridge to bus 0000:00
    [   15.688924] pci_bus 0000:00: root bus resource [bus 00-ff]
    [   15.757395] pci_bus 0000:00: root bus resource [io  0x0000-0xffff]
    [   15.834417] pci_bus 0000:00: root bus resource [mem 0x20013000-0x2fffffff]
    [   15.919995] pci_bus 0000:00: scanning bus
    [   15.970307] pci 0000:00:00.0: [104c:8888] type 01 class 0x060400
    [   16.045213] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x000fffff 64bit]
    [   16.129750] pci 0000:00:00.0: calling pci_fixup_ide_bases+0x0/0x68
    [   16.206777] calling  pci_fixup_ide_bases+0x0/0x68 @ 1 for 0000:00:00.0
    [   16.288078] pci fixup pci_fixup_ide_bases+0x0/0x68 returned after 2 usecs for 0000:00:00.0
    [   16.390801] pci 0000:00:00.0: supports D1
    [   16.441089] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
    [   16.512766] pci 0000:00:00.0: PME# disabled
    [   16.565357] pci_bus 0000:00: fixups for bus
    [   16.617790] PCI: bus0: Fast back to back transfers disabled
    [   16.687332] pci 0000:00:00.0: scanning [bus 01-ff] behind bridge, pass 0
    [   16.770843] pci_bus 0000:01: scanning bus
    [   16.821217] pci 0000:01:00.0: [14e4:b340] type 00 class 0x020000
    [   16.896242] pci 0000:01:00.0: reg 0x10: [mem 0x20840000-0x20847fff 64bit pref]
    [   16.986147] pci 0000:01:00.0: reg 0x18: [mem 0x20800000-0x2083ffff 64bit pref]
    [   17.076060] pci 0000:01:00.0: reg 0x20: [mem 0x21000000-0x21ffffff 64bit pref]
    [   17.165980] pci 0000:01:00.0: calling pci_fixup_ide_bases+0x0/0x68
    [   17.243002] calling  pci_fixup_ide_bases+0x0/0x68 @ 1 for 0000:01:00.0
    [   17.324303] pci fixup pci_fixup_ide_bases+0x0/0x68 returned after 0 usecs for 0000:01:00.0
    [   17.427330] pci 0000:01:00.0: PME# supported from D0 D3hot D3cold
    [   17.503298] pci 0000:01:00.0: PME# disabled
    [   17.555974] pci 0000:01:00.1: [14e4:b340] type 00 class 0x020000
    [   17.630998] pci 0000:01:00.1: reg 0x10: [mem 0x20848000-0x2084ffff 64bit pref]
    [   17.720955] pci 0000:01:00.1: reg 0x20: [mem 0x22000000-0x22ffffff 64bit pref]
    [   17.810869] pci 0000:01:00.1: calling pci_fixup_ide_bases+0x0/0x68
    [   17.887893] calling  pci_fixup_ide_bases+0x0/0x68 @ 1 for 0000:01:00.1
    [   17.969194] pci fixup pci_fixup_ide_bases+0x0/0x68 returned after 0 usecs for 0000:01:00.1
    [   18.072209] pci 0000:01:00.1: PME# supported from D0 D3hot D3cold
    [   18.148176] pci 0000:01:00.1: PME# disabled
    [   18.200812] pci_bus 0000:01: fixups for bus
    [   18.253284] PCI: bus1: Fast back to back transfers disabled
    [   18.322820] pci_bus 0000:01: bus scan returning with max=01
    [   18.392359] pci 0000:00:00.0: scanning [bus 01-ff] behind bridge, pass 1
    [   18.475801] pci_bus 0000:00: bus scan returning with max=ff
    [   18.545357] pci 0000:00:00.0: BAR 9: assigned [mem 0x20800000-0x22ffffff pref]
    [   18.635217] pci 0000:00:00.0: BAR 0: assigned [mem 0x20100000-0x201fffff 64bit]
    [   18.726158] pci 0000:01:00.0: BAR 4: assigned [mem 0x21000000-0x21ffffff 64bit pref]
    [   18.822472] pci 0000:01:00.1: BAR 4: assigned [mem 0x22000000-0x22ffffff 64bit pref]
    [   18.918784] pci 0000:01:00.0: BAR 2: assigned [mem 0x20800000-0x2083ffff 64bit pref]
    [   19.015097] pci 0000:01:00.0: BAR 0: assigned [mem 0x20840000-0x20847fff 64bit pref]
    [   19.111409] pci 0000:01:00.1: BAR 0: assigned [mem 0x20848000-0x2084ffff 64bit pref]
    [   19.207722] pci 0000:00:00.0: PCI bridge to [bus 01-ff]
    [   19.272987] pci 0000:00:00.0:   bridge window [mem 0x20800000-0x22ffffff pref]
    [   19.362982] pcieport 0000:00:00.0: assign IRQ: got 180
    [   19.427328] pcieport 0000:00:00.0: Signaling PME with IRQ 148
    [   19.499125] pcieport 0000:00:00.0: AER enabled with IRQ 148
    [   19.568760] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 781
    [   19.637272] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 789 END
    [   19.710092] dra7-pcie 51800000.pcie: dra7xx_pcie_probe Start
    [   19.780761] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 671
    [   19.849238] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 676
    [   19.917705] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 683
    [   19.986171] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 688
    [   20.054639] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 693
    [   20.123146] dra7-pcie 51800000.pcie: Linked as a consumer to phy-4a095000.pciephy.4
    [   20.218347] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 707
    [   20.286814] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 713
    [   20.355280] dra7-pcie 51800000.pcie: dra7xx_pcie_enable_phy 531
    [   20.429091] dra7-pcie 51800000.pcie: dra7xx_pcie_enable_phy 533
    [   20.502930] dra7-pcie 51800000.pcie: dra7xx_pcie_enable_phy 548
    [   20.576746] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 720
    [   20.645228] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 730
    [   20.713702] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 738
    

  • Hi Christian,

    Can you provide the register value of CTRL_CORE_PCIE_CONTROL (0x4A00 3C3C) and try to set it to 0 (if it's not 0). Can you also provide the dts changes you made.

    Thanks

    Kishon

  • Hi Kishon,

    thanks for the answer.

    CTRL_CORE_PCIE_CONTROL is in default ( CTRL_CORE_PCIE_CONTROL 0x2)  (0x4A00 3C3C::0x8) 

    Is it ok begin of function 'dra7xx_pcie_probe' setting it to 0?

    diff --git a/kernel/linux-4.14/arch/arm/boot/dts/dra7.dtsi b/kernel/linux-4.14/arch/arm/boot/dts/dra7.dtsi
    index 5495cbe2b6..3c8974710e 100644
    --- a/kernel/linux-4.14/arch/arm/boot/dts/dra7.dtsi
    +++ b/kernel/linux-4.14/arch/arm/boot/dts/dra7.dtsi
    @@ -314,7 +314,7 @@
                                                    <0 0 0 2 &pcie1_intc 2>,
                                                    <0 0 0 3 &pcie1_intc 3>,
                                                    <0 0 0 4 &pcie1_intc 4>;
    -                               status = "disabled";
    +                               status = "okay";
                                    pcie1_intc: interrupt-controller {
                                            interrupt-controller;
                                            #address-cells = <0>;
    @@ -344,7 +344,7 @@
                            #address-cells = <1>;
                            ranges = <0x51800000 0x51800000 0x3000
                                      0x0        0x30000000 0x10000000>;
    -                       status = "disabled";
    +                       status = "okay";
                            pcie@51800000 {
                                    compatible = "ti,dra7-pcie";
                                    reg = <0x51800000 0x2000>, <0x51802000 0x14c>, <0x1000 0x2000>;
    @@ -1416,7 +1416,7 @@
                                                  "wkupclk", "refclk",
                                                  "div-clk", "phy-div", "sysclk";
                                    #phy-cells = <0>;
    -                               status = "disabled";
    +                               status = "okay";
                            };
                    };
    

    Thanks 

    Christian

  • Hi Christian,

    Please make sure to enable pcie2_phy from device tree.

    Yes, you can write it in probe.

    Thanks

    Kishon

  • Updated diff in the last post. didn't select everything.

    There is no improvement with setting the CTRL_CORE_PCIE_CONTROL  Register to 0.

    Still the hang at: 

        reg = dra7xx_pcie_readl(dra7xx, PCIECTRL_DRA7XX_CONF_DEVICE_CMD);

    My understanding is that this phy is shared with USB3, must this (usb3_phy1) be disabled? 

  • Question regarding this "pcie2_phy: pciephy@4a095000"

    In the TRM the register 0x4a9500 is marked as reserved, I didn't get the connection to the usb3 phy.

    Are this register relevant:

    USB3PHYTX_TEST_CONFIG_REG - 1: PCIe Mode (uses CLK_SLICER clock)

    USB3PHYRX_ANA_PROGRAMMABILITY_REG1 -  1: PCIe Mode (uses PLLBYPCLK input clock)

    But I think with the hang/crash at PCIECTRL_DRA7XX_CONF_DEVICE_CMD it isn't phy related, something in the  config of pcie_ss2 is missing. 

  • Good point. In DRA72 `USB3 PHY is configured as PCIe PHY.

    So instead of the following in pcie2_rc

    phys = <&pcie2_phy>;

    use

    phys = <&usb3_phy1>;

    Also try to see if you can apply the patch @ https://lkml.org/lkml/2019/1/24/260

    PCIe requires clock from PHY to even access the registers and the PHY is configured differently in DRA72 (atleast the second instance).

    Thanks

    Kishon

  • All changes from master of phy-ti-pipe3.c I applied to our tree, no improvement.

    Using usb3_phy1 as phy of pcie2_rc improved the behavior, configuration is ok. Now it got stuck at USB init.

    I already removed USB3_phy1 from USB:

    @@ -1507,8 +1510,8 @@
                                    interrupt-names = "peripheral",
                                                      "host",
                                                      "otg";
    -                               phys = <&usb2_phy1>, <&usb3_phy1>;
    -                               phy-names = "usb2-phy", "usb3-phy";
    +                               phys = <&usb2_phy1>;
    +                               phy-names = "usb2-phy";
                                    maximum-speed = "super-speed";
                                    dr_mode = "otg";
                                    snps,dis_u3_susphy_quirk;
    

    PCIe LOG

    [   13.701234] pinctrl-single 4a003400.pinmux: 282 pins at pa fc003400 size 1128
    [   13.791263] dra7-pcie 51000000.pcie: dra7xx_pcie_probe Start
    [   13.861885] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 729 0x8 0xfc003c3c
    [   13.946396] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 731 0x0 0xfc003c3c
    [   14.031064] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 755
    [   14.099547] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 760
    [   14.168027] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 767
    [   14.236494] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 772
    [   14.304961] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 777
    [   14.373467] dra7-pcie 51000000.pcie: Linked as a consumer to phy-4a094000.pciephy.3
    [   14.468676] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 791
    [   14.537142] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 797
    [   14.605610] dra7-pcie 51000000.pcie: dra7xx_pcie_enable_phy 538
    [   14.679426] dra7-pcie 51000000.pcie: dra7xx_pcie_enable_phy 540
    [   14.753313] dra7-pcie 51000000.pcie: dra7xx_pcie_enable_phy 555
    [   14.827132] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 811 1
    [   14.897754] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 821
    [   14.966225] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 830
    [   15.034696] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 831 0xf0873104 0xf0873000 + 0x104
    [   15.136315] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 834 0x0
    [   15.209060] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 837
    [   15.277531] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 839 0xffffffea
    [   15.357762] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 843
    [   15.426232] dra7-pcie 51000000.pcie: WA for Errata i870 not applied
    [   15.504417] OF: PCI: host bridge /ocp/axi@0/pcie@51000000 ranges:
    [   15.580399] OF: PCI:    IO 0x20003000..0x20012fff -> 0x00000000
    [   15.654226] OF: PCI:   MEM 0x20013000..0x2fffffff -> 0x20013000
    [   15.828835] dra7-pcie 51000000.pcie: link up
    [   15.882456] dra7-pcie 51000000.pcie: PCI host bridge to bus 0000:00
    [   15.960555] pci_bus 0000:00: root bus resource [bus 00-ff]
    [   16.029026] pci_bus 0000:00: root bus resource [io  0x0000-0xffff]
    [   16.106049] pci_bus 0000:00: root bus resource [mem 0x20013000-0x2fffffff]
    [   16.191627] pci_bus 0000:00: scanning bus
    [   16.241940] pci 0000:00:00.0: [104c:8888] type 01 class 0x060400
    [   16.316851] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x000fffff 64bit]
    [   16.401387] pci 0000:00:00.0: calling pci_fixup_ide_bases+0x0/0x68
    [   16.478415] calling  pci_fixup_ide_bases+0x0/0x68 @ 1 for 0000:00:00.0
    [   16.559716] pci fixup pci_fixup_ide_bases+0x0/0x68 returned after 0 usecs for 0000:00:00.0
    [   16.662439] pci 0000:00:00.0: supports D1
    [   16.712727] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
    [   16.784405] pci 0000:00:00.0: PME# disabled
    [   16.836998] pci_bus 0000:00: fixups for bus
    [   16.889429] PCI: bus0: Fast back to back transfers disabled
    [   16.958969] pci 0000:00:00.0: scanning [bus 01-ff] behind bridge, pass 0
    [   17.042481] pci_bus 0000:01: scanning bus
    [   17.092855] pci 0000:01:00.0: [14e4:b340] type 00 class 0x020000
    [   17.167881] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x00007fff 64bit pref]
    [   17.257787] pci 0000:01:00.0: reg 0x18: [mem 0x00000000-0x0003ffff 64bit pref]
    [   17.347695] pci 0000:01:00.0: reg 0x20: [mem 0x00000000-0x00ffffff 64bit pref]
    [   17.437609] pci 0000:01:00.0: calling pci_fixup_ide_bases+0x0/0x68
    [   17.514634] calling  pci_fixup_ide_bases+0x0/0x68 @ 1 for 0000:01:00.0
    [   17.595935] pci fixup pci_fixup_ide_bases+0x0/0x68 returned after 0 usecs for 0000:01:00.0
    [   17.698965] pci 0000:01:00.0: PME# supported from D0 D3hot D3cold
    [   17.774929] pci 0000:01:00.0: PME# disabled
    [   17.827603] pci 0000:01:00.1: [14e4:b340] type 00 class 0x020000
    [   17.902626] pci 0000:01:00.1: reg 0x10: [mem 0x00000000-0x00007fff 64bit pref]
    [   17.992581] pci 0000:01:00.1: reg 0x20: [mem 0x00000000-0x00ffffff 64bit pref]
    [   18.082494] pci 0000:01:00.1: calling pci_fixup_ide_bases+0x0/0x68
    [   18.159516] calling  pci_fixup_ide_bases+0x0/0x68 @ 1 for 0000:01:00.1
    [   18.240819] pci fixup pci_fixup_ide_bases+0x0/0x68 returned after 0 usecs for 0000:01:00.1
    [   18.343837] pci 0000:01:00.1: PME# supported from D0 D3hot D3cold
    [   18.419801] pci 0000:01:00.1: PME# disabled
    [   18.472434] pci_bus 0000:01: fixups for bus
    [   18.524904] PCI: bus1: Fast back to back transfers disabled
    [   18.594445] pci_bus 0000:01: bus scan returning with max=01
    [   18.663986] pci 0000:00:00.0: scanning [bus 01-ff] behind bridge, pass 1
    [   18.747425] pci_bus 0000:00: bus scan returning with max=ff
    [   18.816981] pci 0000:00:00.0: BAR 9: assigned [mem 0x20800000-0x22ffffff pref]
    [   18.906841] pci 0000:00:00.0: BAR 0: assigned [mem 0x20100000-0x201fffff 64bit]
    [   18.997784] pci 0000:01:00.0: BAR 4: assigned [mem 0x21000000-0x21ffffff 64bit pref]
    [   19.094098] pci 0000:01:00.1: BAR 4: assigned [mem 0x22000000-0x22ffffff 64bit pref]
    [   19.190410] pci 0000:01:00.0: BAR 2: assigned [mem 0x20800000-0x2083ffff 64bit pref]
    [   19.286721] pci 0000:01:00.0: BAR 0: assigned [mem 0x20840000-0x20847fff 64bit pref]
    [   19.383035] pci 0000:01:00.1: BAR 0: assigned [mem 0x20848000-0x2084ffff 64bit pref]
    [   19.479347] pci 0000:00:00.0: PCI bridge to [bus 01-ff]
    [   19.544613] pci 0000:00:00.0:   bridge window [mem 0x20800000-0x22ffffff pref]
    [   19.634602] pcieport 0000:00:00.0: assign IRQ: got 180
    [   19.698949] pcieport 0000:00:00.0: Signaling PME with IRQ 148
    [   19.770755] pcieport 0000:00:00.0: AER enabled with IRQ 148
    [   19.840391] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 874
    [   19.908903] dra7-pcie 51000000.pcie: dra7xx_pcie_probe 882 END
    [   19.981718] dra7-pcie 51800000.pcie: dra7xx_pcie_probe Start
    [   20.052335] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 729 0x0 0xfc003c3c
    [   20.136843] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 731 0x0 0xfc003c3c
    [   20.221506] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 755
    [   20.289985] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 760
    [   20.358455] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 767
    [   20.426921] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 772
    [   20.495389] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 777
    [   20.563896] dra7-pcie 51800000.pcie: Linked as a consumer to phy-4a084400.phy.5
    [   20.654826] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 791
    [   20.723293] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 797
    [   20.791761] dra7-pcie 51800000.pcie: dra7xx_pcie_enable_phy 538
    [   20.865576] dra7-pcie 51800000.pcie: dra7xx_pcie_enable_phy 540
    [   20.939533] dra7-pcie 51800000.pcie: dra7xx_pcie_enable_phy 555
    [   21.013349] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 811 1
    [   21.083966] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 821
    [   21.152444] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 830
    [   21.220913] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 831 0xf087d104 0xf087d000 + 0x104
    [   21.322532] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 834 0x0
    [   21.395275] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 837
    [   21.463739] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 839 0xffffffea
    [   21.543969] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 843
    [   21.612435] dra7-pcie 51800000.pcie: WA for Errata i870 not applied
    [   21.690610] OF: PCI: host bridge /ocp/axi@1/pcie@51800000 ranges:
    [   21.766590] OF: PCI:    IO 0x30003000..0x30012fff -> 0x00000000
    [   21.840416] OF: PCI:   MEM 0x30013000..0x3fffffff -> 0x30013000
    [   22.015018] dra7-pcie 51800000.pcie: link up
    [   22.068627] dra7-pcie 51800000.pcie: PCI host bridge to bus 0001:00
    [   22.146726] pci_bus 0001:00: root bus resource [bus 00-ff]
    [   22.215198] pci_bus 0001:00: root bus resource [io  0x10000-0x1ffff] (bus address [0x0000-0xffff])
    [   22.326441] pci_bus 0001:00: root bus resource [mem 0x30013000-0x3fffffff]
    [   22.412018] pci_bus 0001:00: scanning bus
    [   22.462328] pci 0001:00:00.0: [104c:8888] type 01 class 0x060400
    [   22.537234] pci 0001:00:00.0: reg 0x10: [mem 0x00000000-0x000fffff 64bit]
    [   22.621761] pci 0001:00:00.0: calling pci_fixup_ide_bases+0x0/0x68
    [   22.698787] calling  pci_fixup_ide_bases+0x0/0x68 @ 1 for 0001:00:00.0
    [   22.780088] pci fixup pci_fixup_ide_bases+0x0/0x68 returned after 2 usecs for 0001:00:00.0
    [   22.882808] pci 0001:00:00.0: supports D1
    [   22.933093] pci 0001:00:00.0: PME# supported from D0 D1 D3hot
    [   23.004770] pci 0001:00:00.0: PME# disabled
    [   23.057355] pci_bus 0001:00: fixups for bus
    [   23.109797] PCI: bus0: Fast back to back transfers disabled
    [   23.179337] pci 0001:00:00.0: scanning [bus 01-ff] behind bridge, pass 0
    [   23.262847] pci_bus 0001:01: scanning bus
    [   23.313210] pci 0001:01:00.0: [14e4:b340] type 00 class 0x020000
    [   23.388239] pci 0001:01:00.0: reg 0x10: [mem 0x00000000-0x00007fff 64bit pref]
    [   23.478145] pci 0001:01:00.0: reg 0x18: [mem 0x00000000-0x0003ffff 64bit pref]
    [   23.568049] pci 0001:01:00.0: reg 0x20: [mem 0x00000000-0x00ffffff 64bit pref]
    [   23.657962] pci 0001:01:00.0: calling pci_fixup_ide_bases+0x0/0x68
    [   23.734986] calling  pci_fixup_ide_bases+0x0/0x68 @ 1 for 0001:01:00.0
    [   23.816288] pci fixup pci_fixup_ide_bases+0x0/0x68 returned after 0 usecs for 0001:01:00.0
    [   23.919316] pci 0001:01:00.0: PME# supported from D0 D3hot D3cold
    [   23.995283] pci 0001:01:00.0: PME# disabled
    [   24.047956] pci 0001:01:00.1: [14e4:b340] type 00 class 0x020000
    [   24.122979] pci 0001:01:00.1: reg 0x10: [mem 0x00000000-0x00007fff 64bit pref]
    [   24.212934] pci 0001:01:00.1: reg 0x20: [mem 0x00000000-0x00ffffff 64bit pref]
    [   24.302847] pci 0001:01:00.1: calling pci_fixup_ide_bases+0x0/0x68
    [   24.379869] calling  pci_fixup_ide_bases+0x0/0x68 @ 1 for 0001:01:00.1
    [   24.461171] pci fixup pci_fixup_ide_bases+0x0/0x68 returned after 0 usecs for 0001:01:00.1
    [   24.564188] pci 0001:01:00.1: PME# supported from D0 D3hot D3cold
    [   24.640154] pci 0001:01:00.1: PME# disabled
    [   24.692787] pci_bus 0001:01: fixups for bus
    [   24.745256] PCI: bus1: Fast back to back transfers disabled
    [   24.814791] pci_bus 0001:01: bus scan returning with max=01
    [   24.884332] pci 0001:00:00.0: scanning [bus 01-ff] behind bridge, pass 1
    [   24.967773] pci_bus 0001:00: bus scan returning with max=ff
    [   25.037325] pci 0001:00:00.0: BAR 9: assigned [mem 0x30800000-0x32ffffff pref]
    [   25.127189] pci 0001:00:00.0: BAR 0: assigned [mem 0x30100000-0x301fffff 64bit]
    [   25.218129] pci 0001:01:00.0: BAR 4: assigned [mem 0x31000000-0x31ffffff 64bit pref]
    [   25.314445] pci 0001:01:00.1: BAR 4: assigned [mem 0x32000000-0x32ffffff 64bit pref]
    [   25.410756] pci 0001:01:00.0: BAR 2: assigned [mem 0x30800000-0x3083ffff 64bit pref]
    [   25.507069] pci 0001:01:00.0: BAR 0: assigned [mem 0x30840000-0x30847fff 64bit pref]
    [   25.603381] pci 0001:01:00.1: BAR 0: assigned [mem 0x30848000-0x3084ffff 64bit pref]
    [   25.699693] pci 0001:00:00.0: PCI bridge to [bus 01-ff]
    [   25.764958] pci 0001:00:00.0:   bridge window [mem 0x30800000-0x32ffffff pref]
    [   25.854935] pcieport 0001:00:00.0: assign IRQ: got 213
    [   25.919273] pcieport 0001:00:00.0: Signaling PME with IRQ 181
    [   25.991072] pcieport 0001:00:00.0: AER enabled with IRQ 181
    [   26.060720] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 874
    [   26.129223] dra7-pcie 51800000.pcie: dra7xx_pcie_probe 882 END
    

    USB Crash:

       28.506200] cpsw 48484000.ethernet: cpsw: Detected MACID = f4:e1:1e:c1:7f:41
    [   28.592254] usbcore: registered new interface driver asix
    [   28.657496] usbcore: registered new interface driver ax88179_178a
    [   28.731128] usbcore: registered new interface driver cdc_ether
    [   28.801606] usbcore: registered new interface driver net1080
    [   28.869983] usbcore: registered new interface driver cdc_subset
    [   28.941511] usbcore: registered new interface driver zaurus
    [   29.008851] usbcore: registered new interface driver cdc_ncm
    [   29.083972] omap_hwmod: usb_otg_ss1: _wait_target_disable failed
    [   29.157353] dwc3 488d0000.usb: Configuration mismatch. dr_mode forced to host
    [   29.244357] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
    [   29.323221] ehci-pci: EHCI PCI platform driver
    [   29.376901] ehci-omap: OMAP-EHCI Host Controller driver
    [   29.440601] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [   29.506874] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
    [   29.599660] xhci-hcd xhci-hcd.0.auto: hcc params 0x0220f04c hci version 0x100 quirks 0x0000000002010010
    [   29.713240] xhci-hcd xhci-hcd.0.auto: irq 215, io mem 0x488d0000
    [   29.785985] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
    [   29.868003] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [   29.955266] usb usb1: Product: xHCI Host Controller
    [   30.014162] usb usb1: Manufacturer: Linux 4.14.115-rt59 xhci-hcd
    [   30.086709] usb usb1: SerialNumber: xhci-hcd.0.auto
    [   30.146063] hub 1-0:1.0: USB hub found
    [   30.191368] hub 1-0:1.0: 1 port detected
    [   30.239030] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [   30.305304] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
    [   30.397838] xhci-hcd xhci-hcd.0.auto: Host supports USB 3.0  SuperSpeed
    [   30.477915] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
    [   30.575824] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003
    [   30.657837] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [   30.745100] usb usb2: Product: xHCI Host Controller
    [   30.803989] usb usb2: Manufacturer: Linux 4.14.115-rt59 xhci-hcd
    [   30.876537] usb usb2: SerialNumber: xhci-hcd.0.auto
    [   30.935822] hub 2-0:1.0: USB hub found
    [   30.981115] hub 2-0:1.0: 1 port detected
    [   31.028864] usbcore: registered new interface driver usb-storage
    [   31.101756] i2c /dev entries driver
    [   31.143920] IR NEC protocol handler initialized
    [   31.198615] IR RC5(x/sz) protocol handler initialized
    [   31.259610] IR RC6 protocol handler initialized
    [   31.314296] IR JVC protocol handler initialized
    [   31.368981] IR Sony protocol handler initialized
    [   31.424718] IR SANYO protocol handler initialized
    [   31.481505] IR Sharp protocol handler initialized
    [   31.538293] IR MCE Keyboard/mouse protocol handler initialized
    [   31.608740] IR XMP protocol handler initialized
    [   31.666642] omap_hsmmc 4809c000.mmc: Got CD GPIO
    [   31.781607] oprofile: no performance counters
    [   31.834318] oprofile: using timer interrupt.
    [   31.885894] pktgen: Packet Generator for packet performance testing. Version: 2.75
    [   31.995918] tcp_probe: probe registered (port=0/fwmark=0) bufsize=4096
    [   32.075190] NET: Registered protocol family 10
    [   32.130781] Segment Routing with IPv6
    [   32.175027] NET: Registered protocol family 17
    [   32.228741] omap_voltage_late_init: Voltage driver support not added
    [   32.305504] Power Management for TI OMAP4+ devices.
    [   32.364630] ThumbEE CPU extension supported.
    [   32.416175] Registering SWP/SWPB emulation handler
    [   32.491256] dmm 4e000000.dmm: initialized all PAT entries
    [   32.557708] omap-gpmc 50000000.gpmc: GPMC revision 6.0
    [   32.619783] gpmc_mem_init: disabling cs 0 mapped at 0x0-0x1000000
    [   32.694639] nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xf1
    [   32.771444] nand: Micron MT29F1G08ABADAH4
    [   32.819840] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
    [   32.911301] using OMAP_ECC_ON_DIE ECC scheme
    [   32.962868] nand: micron: on die ecc: 1 unsup(0)|sup(1)|mand(2)
    [   33.034371] nand: NAND_ECC_ON_DIE selected
    [   33.727526] i2c i2c-0: of_i2c: modalias failure on /ocp/i2c@48070000/tps@58
    [   33.811664] i2c i2c-0: Failed to create I2C device for /ocp/i2c@48070000/tps@58
    [   33.899989] omap_i2c 48070000.i2c: bus 0 rev0.12 at 100 kHz
    [   34.020834] lm75: probe of 1-004f failed with error -121
    [   34.140779] rtc-ds1307: probe of 1-0068 failed with error -121
    [   34.211273] omap_i2c 48072000.i2c: bus 1 rev0.12 at 20 kHz
    [   34.284931] omap_hwmod: usb_otg_ss1: _wait_target_disable failed
    [   34.358442] omap_gpio 48051000.gpio: Could not set line 25 debounce to 20000 microseconds (-22)
    [   34.465245] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
    [   34.531546] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 3
    [   34.624363] xhci-hcd xhci-hcd.1.auto: hcc params 0x0220f04c hci version 0x100 quirks 0x0000000002010010
    [   34.737957] xhci-hcd xhci-hcd.1.auto: irq 220, io mem 0x48890000
    [   34.811847] usb usb3: New USB device found, idVendor=1d6b, idProduct=0002
    [   34.893870] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [   34.981141] usb usb3: Product: xHCI Host Controller
    [   35.040033] usb usb3: Manufacturer: Linux 4.14.115-rt59 xhci-hcd
    [   35.112598] usb usb3: SerialNumber: xhci-hcd.1.auto
    [   35.171972] hub 3-0:1.0: USB hub found
    [   35.217274] hub 3-0:1.0: 1 port detected
    [   35.264949] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
    [   35.331231] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 4
    [   35.423759] xhci-hcd xhci-hcd.1.auto: Host supports USB 3.0  SuperSpeed
    [   35.504970] usb usb4: We don't know the algorithms for LPM for this host, disabling LPM.
    [   35.602902] usb usb4: New USB device found, idVendor=1d6b, idProduct=0003
    [   35.684929] usb usb4: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [   35.772191] usb usb4: Product: xHCI Host Controller
    [   35.831087] usb usb4: Manufacturer: Linux 4.14.115-rt59 xhci-hcd
    [   35.903643] usb usb4: SerialNumber: xhci-hcd.1.auto
    [   35.963185] hub 4-0:1.0: USB hub found
    [   36.008480] hub 4-0:1.0: 1 port detected
    [   36.057851] hctosys: unable to open rtc device (rtc0)
    [   36.121414] Freeing unused kernel memory: 2048K
    [   36.176156] usb 3-1: new high-speed USB device number 2 using xhci-hcd
    [   36.255363] Unhandled fault: asynchronous external abort (0x1211) at 0x00000000
    [   36.343656] pgd = c0003000
    [   36.376261] [00000000] *pgd=80000080004003, *pmd=00000000
    [   36.441452] Internal error: : 1211 [#1] SMP ARM
    [   36.496124] Modules linked in:
    [   36.532944] CPU: 0 PID: 51 Comm: kworker/0:2 Tainted: G        W       4.14.115-rt59 #40
    [   36.630698] Hardware name: Generic DRA72X (Flattened Device Tree)
    [   36.704289] Workqueue: pm pm_runtime_work
    [   36.752663] task: ef3b86c0 task.stack: dfc94000
    [   36.807336] PC is at xhci_hub_control+0xbac/0x1908
    [   36.865166] LR is at arm_heavy_mb+0x3c/0x40
    [   36.915638] pc : [<c06ecaa4>]    lr : [<c0215140>]    psr: a0000093
    [   36.991322] sp : dfc95af8  ip : dfc95ae8  fp : dfc95b74
    [   37.054398] r10: 0000001b  r9 : 00000001  r8 : dfc69180
    [   37.117475] r7 : 00000000  r6 : 00000000  r5 : dfce1ac0  r4 : 0e0002a0
    [   37.196311] r3 : 00000000  r2 : 00000000  r1 : 000002a0  r0 : 000002a0
    [   37.275149] Flags: NzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment user
    [   37.362391] Control: 30c5387d  Table: 80003000  DAC: fffffffd
    [   37.431771] Process kworker/0:2 (pid: 51, stack limit = 0xdfc94218)
    [   37.507456] Stack: (0xdfc95af8 to 0xdfc96000)
    [   37.560024] 5ae0:                                                       dfc95b24 dfc95b08
    [   37.658827] 5b00: c02574c4 c0873818 ef07a900 ef6a6278 ef6a6278 ef3b8740 dfc95b6c dfc95b28
    [   37.757627] 5b20: c025a7ec c0257458 dfc69150 00000000 00000000 00000001 70f8e0f2 20000013
    [   37.856428] 5b40: dfce1ac0 ef6a6278 ef07a900 dfcecc00 dfc6a000 00000000 c108bc68 c06ebef8
    [   37.955228] 5b60: 00000000 00002303 dfc95c24 dfc95b78 c06ba34c c06ebf04 dfced340 00000000
    [   38.054030] 5b80: 00000701 0000001b 00000023 dfced340 ef3b8740 ef6a6278 00001782 00000000
    [   38.152838] 5ba0: 000001b0 00000000 dfc95bdc 00000001 c0257c70 ef3b8740 ef3b8740 ef6a6278
    [   38.251638] 5bc0: 00000001 00000000 00000356 00000000 dfc95c2c 00000000 dfc95c04 ef07a900
    [   38.350438] 5be0: ef6a6278 ef6a6278 00000000 70f8f874 00000008 00000000 dfc95c3c dfcecc00
    [   38.449239] 5c00: dfcf9400 01400000 00000000 00000000 c0a5a1c4 00000003 dfc95c6c dfc95c28
    [   38.548040] 5c20: c06bb950 c06ba0b4 ef6a6240 ef6a6240 dfc95ca4 dfc95c40 c026036c 00000001
    [   38.646841] 5c40: ffffffff dfcecc00 dfc95c74 00000000 dfc95cbc 000003e8 0000001b 00000003
    [   38.745642] 5c60: dfc95cac dfc95c70 c06bc190 c06bb6e0 dfced300 00000000 00000000 dfc95c7c
    [   38.844443] 5c80: dfc95c7c 0000001b dfc95cac dfced300 dfcf9400 00000000 80000100 00000701
    [   38.943251] 5ca0: dfc95cec dfc95cb0 c06bc2ac c06bc148 c028c530 00000023 00000000 dfc95d28
    [   39.042060] 5cc0: dfc95d28 000003e8 dfcf9400 00000002 00000402 00000002 00000000 dfce6800
    [   39.140860] 5ce0: dfc95d1c dfc95cf0 c06b0e44 c06bc20c 0000001b 00000701 00000000 00000000
    [   39.239661] 5d00: 000003e8 ef6a9e00 dfc95d3c dfce6a00 dfc95d54 dfc95d20 c06b4e38 c06b0e04
    [   39.338468] 5d20: c0b702d0 dfcf9524 ef6a9e00 00000000 00000000 dfcf9400 00000001 c1002d00
    [   39.437270] 5d40: 00000402 c0bc1c48 dfc95d94 dfc95d58 c06bfa70 c06b4cb8 c0269098 00000400
    [   39.536071] 5d60: 60000093 00000002 ef05ab00 dfcf9400 dfcf9470 00000008 c1002d00 00000000
    [   39.634871] 5d80: c06c093c c1002d00 dfc95dac dfc95d98 c06c096c c06bf9f0 00000000 dfcf9470
    [   39.733671] 5da0: dfc95de4 dfc95db0 c0611608 c06c0948 0000000c c1002d00 dfc95e14 dfcf9470
    [   39.832473] 5dc0: c06c093c 00000008 c1002d00 00000000 00000008 c1002d00 dfc95e04 dfc95de8
    [   39.931272] 5de0: c061178c c0611528 dfcf9470 c06c093c 00000008 c1002d00 dfc95e54 dfc95e08
    [   40.030073] 5e00: c06107e4 c0611770 c0269698 dfc94000 c0610ddc c06106f0 dfce6820 00000004
    [   40.128873] 5e20: dfce6894 60000013 dfc95e54 dfcf9470 00000008 dfcf94e4 60000013 ef6a9e00
    [   40.227674] 5e40: c06c09c0 dfc94000 dfc95e74 dfc95e58 c0611e78 c06106f0 dfcf9470 dfcf9470
    [   40.326476] 5e60: 00000002 00000000 dfc95e8c dfc95e78 c06c09ec c0611e20 00000000 dfcf9470
    [   40.425276] 5e80: dfc95ec4 dfc95e90 c0611608 c06c09cc c06b2db8 dfcf9400 dfc95ebe dfcf9470
    [   40.524077] 5ea0: 00000000 00000002 00000000 ef6a9e00 00000000 dfc94000 dfc95ee4 dfc95ec8
    [   40.622877] 5ec0: c0610da0 c0611528 dfcf9524 dfc5d780 ef6a5e40 00000000 dfc95efc dfc95ee8
    [   40.721678] 5ee0: c0611fa8 c0610cd0 dfcf9524 dfc5d780 dfc95f34 dfc95f00 c0243564 c0611f1c
    [   40.820478] 5f00: dfc95f1c dfc95f10 c0244880 dfc5d780 ef6a5e40 dfc5d798 00000008 c1002d00
    [   40.919279] 5f20: ef6a5e58 dfc94000 dfc95f74 dfc95f38 c02442f0 c0243380 dfc94000 c0b62b2c
    [   41.018079] 5f40: c104c333 ef6a5e40 dfc5cb1c dfc5cb00 00000000 dfc5ca80 dfc94000 dfc5d780
    [   41.116880] 5f60: dfc5cb1c ef085e80 dfc95fac dfc95f78 c0249748 c02442a4 00000000 c0244298
    [   41.215680] 5f80: 00000000 dfc5ca80 c0249610 00000000 00000000 00000000 00000000 00000000
    [   41.314481] 5fa0: 00000000 dfc95fb0 c0207ce0 c024961c 00000000 00000000 00000000 00000000
    [   41.413282] 5fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
    [   41.512082] 5fe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
    [   41.610880] Backtrace:
    [   41.640350] [<c06ebef8>] (xhci_hub_control) from [<c06ba34c>] (usb_hcd_submit_urb+0x2a4/0x8b8)
    [   41.744409]  r10:00002303 r9:00000000 r8:c06ebef8 r7:c108bc68 r6:00000000 r5:dfc6a000
    [   41.839009]  r4:dfcecc00
    [   41.869518] [<c06ba0a8>] (usb_hcd_submit_urb) from [<c06bb950>] (usb_submit_urb+0x27c/0x508)
    [   41.971478]  r10:00000003 r9:c0a5a1c4 r8:00000000 r7:00000000 r6:01400000 r5:dfcf9400
    [   42.066079]  r4:dfcecc00
    [   42.096589] [<c06bb6d4>] (usb_submit_urb) from [<c06bc190>] (usb_start_wait_urb+0x54/0xc4)
    [   42.196445]  r10:00000003 r9:0000001b r8:000003e8 r7:dfc95cbc r6:00000000 r5:dfc95c74
    [   42.291047]  r4:dfcecc00
    [   42.321557] [<c06bc13c>] (usb_start_wait_urb) from [<c06bc2ac>] (usb_control_msg+0xac/0xf0)
    [   42.422464]  r8:00000701 r7:80000100 r6:00000000 r5:dfcf9400 r4:dfced300
    [   42.503412] [<c06bc200>] (usb_control_msg) from [<c06b0e44>] (set_port_feature+0x4c/0x54)
    [   42.602218]  r10:dfce6800 r9:00000000 r8:00000002 r7:00000402 r6:00000002 r5:dfcf9400
    [   42.696813]  r4:000003e8
    [   42.727321] [<c06b0df8>] (set_port_feature) from [<c06b4e38>] (hub_suspend+0x18c/0x200)
    [   42.824024]  r4:dfce6a00
    [   42.854532] [<c06b4cac>] (hub_suspend) from [<c06bfa70>] (usb_suspend_both+0x8c/0x1f4)
    [   42.950186]  r9:c0bc1c48 r8:00000402 r7:c1002d00 r6:00000001 r5:dfcf9400 r4:00000000
    [   43.043737] [<c06bf9e4>] (usb_suspend_both) from [<c06c096c>] (usb_runtime_suspend+0x30/0x68)
    [   43.146744]  r10:c1002d00 r9:c06c093c r8:00000000 r7:c1002d00 r6:00000008 r5:dfcf9470
    [   43.241340]  r4:dfcf9400
    [   43.271849] [<c06c093c>] (usb_runtime_suspend) from [<c0611608>] (__rpm_callback+0xec/0x248)
    [   43.373805]  r5:dfcf9470 r4:00000000
    [   43.416920] [<c061151c>] (__rpm_callback) from [<c061178c>] (rpm_callback+0x28/0x88)
    [   43.510474]  r10:c1002d00 r9:00000008 r8:00000000 r7:c1002d00 r6:00000008 r5:c06c093c
    [   43.605069]  r4:dfcf9470
    [   43.635576] [<c0611764>] (rpm_callback) from [<c06107e4>] (rpm_suspend+0x100/0x51c)
    [   43.728078]  r7:c1002d00 r6:00000008 r5:c06c093c r4:dfcf9470
    [   43.796411] [<c06106e4>] (rpm_suspend) from [<c0611e78>] (__pm_runtime_suspend+0x64/0x88)
    [   43.895217]  r10:dfc94000 r9:c06c09c0 r8:ef6a9e00 r7:60000013 r6:dfcf94e4 r5:00000008
    [   43.989812]  r4:dfcf9470
    [   44.020322] [<c0611e14>] (__pm_runtime_suspend) from [<c06c09ec>] (usb_runtime_idle+0x2c/0x34)
    [   44.124379]  r7:00000000 r6:00000002 r5:dfcf9470 r4:dfcf9470
    [   44.192712] [<c06c09c0>] (usb_runtime_idle) from [<c0611608>] (__rpm_callback+0xec/0x248)
    [   44.291516]  r5:dfcf9470 r4:00000000
    [   44.334632] [<c061151c>] (__rpm_callback) from [<c0610da0>] (rpm_idle+0xdc/0x124)
    [   44.425033]  r10:dfc94000 r9:00000000 r8:ef6a9e00 r7:00000000 r6:00000002 r5:00000000
    [   44.519628]  r4:dfcf9470
    [   44.550135] [<c0610cc4>] (rpm_idle) from [<c0611fa8>] (pm_runtime_work+0x98/0xa8)
    [   44.640537]  r7:00000000 r6:ef6a5e40 r5:dfc5d780 r4:dfcf9524
    [   44.708872] [<c0611f10>] (pm_runtime_work) from [<c0243564>] (process_one_work+0x1f0/0x41c)
    [   44.809774]  r5:dfc5d780 r4:dfcf9524
    [   44.852891] [<c0243374>] (process_one_work) from [<c02442f0>] (worker_thread+0x58/0x5d8)
    [   44.950647]  r10:dfc94000 r9:ef6a5e58 r8:c1002d00 r7:00000008 r6:dfc5d798 r5:ef6a5e40
    [   45.045249]  r4:dfc5d780
    [   45.075759] [<c0244298>] (worker_thread) from [<c0249748>] (kthread+0x138/0x168)
    [   45.165107]  r10:ef085e80 r9:dfc5cb1c r8:dfc5d780 r7:dfc94000 r6:dfc5ca80 r5:00000000
    [   45.259702]  r4:dfc5cb00
    [   45.290213] [<c0249610>] (kthread) from [<c0207ce0>] (ret_from_fork+0x14/0x34)
    [   45.377459]  r10:00000000 r9:00000000 r8:00000000 r7:00000000 r6:00000000 r5:c0249610
    [   45.472054]  r4:dfc5ca80
    [   45.502562] Code: e7933107 e5834000 e5933000 f57ff04f (e51b3034)
    [   45.576158] ---[ end trace a9a6f9df69c1b284 ]---
    [   45.631878] Kernel panic - not syncing: Fatal exception
    [   45.694961] ---[ end Kernel panic - not syncing: Fatal exception
    

  • Hi Christian,

    Can you try changing HCD_USB3 to HCD_USB2 in xhci_hc_driver.flags drivers/usb/host/xhci.c

    Also in the usb DT, change maximum change from super-speed to high-speed (in addition to all the previous changes)

    Thanks

    Kishon

  • Kishon, thanks for the quick reply.

    Here the result, still super speed capability present :[   30.397944] xhci-hcd xhci-hcd.0.auto: Host supports USB 3.0  SuperSpeed

    @@ -1507,9 +1510,9 @@
                                    interrupt-names = "peripheral",
                                                      "host",
                                                      "otg";
    -                               phys = <&usb2_phy1>, <&usb3_phy1>;
    -                               phy-names = "usb2-phy", "usb3-phy";
    -                               maximum-speed = "super-speed";
    +                               phys = <&usb2_phy1>;
    +                               phy-names = "usb2-phy";
    +                               maximum-speed = "high-speed";
                                    dr_mode = "otg";
                                    snps,dis_u3_susphy_quirk;
                                    snps,dis_u2_susphy_quirk;
    
    --- a/kernel/linux-4.14/drivers/usb/host/xhci.c
    +++ b/kernel/linux-4.14/drivers/usb/host/xhci.c
    @@ -5004,7 +5004,7 @@ static const struct hc_driver xhci_hc_driver = {
             * generic hardware linkage
             */
            .irq =                  xhci_irq,
    -       .flags =                HCD_MEMORY | HCD_USB3 | HCD_SHARED,
    +       .flags =                HCD_MEMORY | HCD_USB2 | HCD_SHARED,
    
            /*
             * basic lifecycle operations
    

       28.592292] usbcore: registered new interface driver asix
    [   28.657529] usbcore: registered new interface driver ax88179_178a
    [   28.731161] usbcore: registered new interface driver cdc_ether
    [   28.801643] usbcore: registered new interface driver net1080
    [   28.870017] usbcore: registered new interface driver cdc_subset
    [   28.941544] usbcore: registered new interface driver zaurus
    [   29.008886] usbcore: registered new interface driver cdc_ncm
    [   29.084057] omap_hwmod: usb_otg_ss1: _wait_target_disable failed
    [   29.157447] dwc3 488d0000.usb: Configuration mismatch. dr_mode forced to host
    [   29.244457] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
    [   29.323319] ehci-pci: EHCI PCI platform driver
    [   29.376996] ehci-omap: OMAP-EHCI Host Controller driver
    [   29.440703] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [   29.506972] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
    [   29.599760] xhci-hcd xhci-hcd.0.auto: hcc params 0x0220f04c hci version 0x100 quirks 0x0000000002010010
    [   29.713338] xhci-hcd xhci-hcd.0.auto: irq 215, io mem 0x488d0000
    [   29.786085] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
    [   29.868100] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [   29.955364] usb usb1: Product: xHCI Host Controller
    [   30.014259] usb usb1: Manufacturer: Linux 4.14.115-rt59 xhci-hcd
    [   30.086815] usb usb1: SerialNumber: xhci-hcd.0.auto
    [   30.146172] hub 1-0:1.0: USB hub found
    [   30.191475] hub 1-0:1.0: 1 port detected
    [   30.239133] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [   30.305411] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
    [   30.397944] xhci-hcd xhci-hcd.0.auto: Host supports USB 3.0  SuperSpeed
    [   30.478103] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
    [   30.560115] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [   30.647376] usb usb2: Product: xHCI Host Controller
    [   30.706272] usb usb2: Manufacturer: Linux 4.14.115-rt59 xhci-hcd
    [   30.778820] usb usb2: SerialNumber: xhci-hcd.0.auto
    [   30.838086] hub 2-0:1.0: USB hub found
    [   30.883381] hub 2-0:1.0: 1 port detected
    [   30.930829] ------------[ cut here ]------------
    [   30.986592] WARNING: CPU: 0 PID: 1 at /home/cxf11051/git/grs1040li/linux-kernel/kernel/linux-4.14/drivers/usb/core/port.c:319 link_peers+0x118/0x150
    [   31.147410] Modules linked in:
    [   31.184245] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W       4.14.115-rt59 #41
    [   31.278845] Hardware name: Generic DRA72X (Flattened Device Tree)
    [   31.352429] Backtrace:
    [   31.381898] [<c020b538>] (dump_backtrace) from [<c020b808>] (show_stack+0x18/0x1c)
    [   31.473346]  r7:00000009 r6:60000013 r5:00000000 r4:c104a7ec
    [   31.541688] [<c020b7f0>] (show_stack) from [<c086aa58>] (dump_stack+0x8c/0xa0)
    [   31.628938] [<c086a9cc>] (dump_stack) from [<c022be04>] (__warn+0xec/0x104)
    [   31.713033]  r7:00000009 r6:c0bc3448 r5:00000000 r4:00000000
    [   31.781371] [<c022bd18>] (__warn) from [<c022bed4>] (warn_slowpath_null+0x28/0x30)
    [   31.872825]  r9:00000000 r8:dfc50600 r7:dfc57210 r6:00000000 r5:dfc57200 r4:dfc50600
    [   31.966381] [<c022beac>] (warn_slowpath_null) from [<c06ca9a8>] (link_peers+0x118/0x150)
    [   32.064139] [<c06ca890>] (link_peers) from [<c06cacb0>] (usb_hub_create_port_device+0x1d8/0x318)
    [   32.170300]  r9:00000000 r8:40000000 r7:00000001 r6:dfc57208 r5:dfc57000 r4:dfc57200
    [   32.263859] [<c06caad8>] (usb_hub_create_port_device) from [<c06b791c>] (hub_probe+0x6a8/0x8d0)
    [   32.368968]  r10:dfc50e00 r9:dfc50e20 r8:00000001 r7:00000000 r6:00000000 r5:00000001
    [   32.463563]  r4:dfc57000
    [   32.494074] [<c06b7274>] (hub_probe) from [<c06c07e4>] (usb_probe_interface+0x10c/0x264)
    [   32.591827]  r10:00000000 r9:c0a5a018 r8:dfc50e00 r7:c1031e7c r6:dfc5e800 r5:dfc5e870
    [   32.686421]  r4:dfc50e20
    [   32.716934] [<c06c06d8>] (usb_probe_interface) from [<c0606450>] (driver_probe_device+0x234/0x2e8)
    [   32.825193]  r10:00000000 r9:c1031e7c r8:00000000 r7:00000000 r6:c108ab14 r5:c108ab10
    [   32.919788]  r4:dfc50e20
    [   32.950299] [<c060621c>] (driver_probe_device) from [<c0606668>] (__device_attach_driver+0xa0/0xd4)
    [   33.059609]  r10:c1031f28 r9:00000000 r8:c108aaec r7:00000001 r6:dfc50e20 r5:ef077a98
    [   33.154205]  r4:c1031e7c r3:00000000
    [   33.197324] [<c06065c8>] (__device_attach_driver) from [<c0604850>] (bus_for_each_drv+0x68/0x9c)
    [   33.303483]  r7:00000001 r6:c06065c8 r5:ef077a98 r4:00000000
    [   33.371817] [<c06047e8>] (bus_for_each_drv) from [<c06060f8>] (__device_attach+0xb8/0x11c)
    [   33.471670]  r6:c1031f40 r5:dfc50e54 r4:dfc50e20
    [   33.527397] [<c0606040>] (__device_attach) from [<c06066e8>] (device_initial_probe+0x14/0x18)
    [   33.630404]  r7:dfc50e20 r6:c1031f40 r5:dfc50e20 r4:dfc50e28
    [   33.698738] [<c06066d4>] (device_initial_probe) from [<c0605640>] (bus_probe_device+0x8c/0x94)
    [   33.802799] [<c06055b4>] (bus_probe_device) from [<c0603804>] (device_add+0x388/0x598)
    [   33.898452]  r7:dfc50e20 r6:dfc5e870 r5:00000000 r4:dfc50e28
    [   33.966786] [<c060347c>] (device_add) from [<c06be668>] (usb_set_configuration+0x4e0/0x854)
    [   34.067692]  r10:dfc5e870 r9:00000001 r8:dfc5e800 r7:c0bc1aa4 r6:dfc50c50 r5:00000000
    [   34.162287]  r4:dfc50e00
    [   34.192796] [<c06be188>] (usb_set_configuration) from [<c06c9520>] (generic_probe+0x34/0x80)
    [   34.294754]  r10:00000000 r9:c10326b4 r8:00000000 r7:00000000 r6:c108ab14 r5:00000001
    [   34.389349]  r4:dfc5e800
    [   34.419859] [<c06c94ec>] (generic_probe) from [<c06c06c0>] (usb_probe_device+0x2c/0x44)
    [   34.516561]  r5:c10326b4 r4:dfc5e800
    [   34.559679] [<c06c0694>] (usb_probe_device) from [<c0606450>] (driver_probe_device+0x234/0x2e8)
    [   34.664785]  r5:c108ab10 r4:dfc5e870
    [   34.707903] [<c060621c>] (driver_probe_device) from [<c0606668>] (__device_attach_driver+0xa0/0xd4)
    [   34.817216]  r10:c1031de8 r9:00000000 r8:ef045e80 r7:00000001 r6:dfc5e870 r5:ef077c68
    [   34.911819]  r4:c10326b4 r3:00000000
    [   34.954936] [<c06065c8>] (__device_attach_driver) from [<c0604850>] (bus_for_each_drv+0x68/0x9c)
    [   35.061095]  r7:00000001 r6:c06065c8 r5:ef077c68 r4:00000000
    [   35.129429] [<c06047e8>] (bus_for_each_drv) from [<c06060f8>] (__device_attach+0xb8/0x11c)
    [   35.229283]  r6:c1031f40 r5:dfc5e8a4 r4:dfc5e870
    [   35.285010] [<c0606040>] (__device_attach) from [<c06066e8>] (device_initial_probe+0x14/0x18)
    [   35.388017]  r7:dfc5e870 r6:c1031f40 r5:dfc5e870 r4:dfc5e878
    [   35.456352] [<c06066d4>] (device_initial_probe) from [<c0605640>] (bus_probe_device+0x8c/0x94)
    [   35.560413] [<c06055b4>] (bus_probe_device) from [<c0603804>] (device_add+0x388/0x598)
    [   35.656066]  r7:dfc5e870 r6:dfc29e10 r5:00000000 r4:dfc5e878
    [   35.724397] [<c060347c>] (device_add) from [<c06b522c>] (usb_new_device+0x258/0x418)
    [   35.817950]  r10:dfc29e10 r9:00000001 r8:dfc5e800 r7:000000d7 r6:dfc4ee40 r5:dfc5e870
    [   35.912545]  r4:dfc5e800
    [   35.943053] [<c06b4fd4>] (usb_new_device) from [<c06b94a8>] (usb_add_hcd+0x51c/0x854)
    [   36.037657]  r10:dfc29e10 r9:00000001 r8:dfc5e800 r7:000000d7 r6:00000012 r5:
    

  • HI Christian,

    Is it fatal or the boot proceeds after that warning?

    Thanks

    Kishon

  • yes.

    [   36.037657]  r10:dfc29e10 r9:00000001 r8:dfc5e800 r7:000000d7 r6:00000012 r5:
    U-Boot SPL 2017.03 (Dec 18 2020 - 10:44:29)
    DRA722-GP ES2.0
    Starting boot time counter ... complete.
    SPL essential peripherals initialized ...
    Trying to boot from SPI
    

  • I disabled now the USB, and the kernel boots up.

    Now the second Controller is available, but still the strange behavior is there, that both PCI devices show und Controller 1.

    This I didn't  understand.

    lspci
    0000:00:00.0 Class 0604: Device 104c:8888 (rev 01)
    0000:01:00.0 Class 0200: Device 14e4:b340 (rev 01)
    0000:01:00.1 Class 0200: Device 14e4:b340 (rev 01)
    0001:00:00.0 Class 0000: Device 104c:8888 (rev 01)
    
    

  • Hi Christian,

    It could be a multi-function device that you are connecting.

    Btw, Your kernel log showes devices under the second controller also which is missing in the lspci output.

    Ideally lspci should have shows all the below devices,,

    [ 16.241940] pci 0000:00:00.0: [104c:8888] type 01 class 0x060400
    [ 17.092855] pci 0000:01:00.0: [14e4:b340] type 00 class 0x020000
    [ 17.827603] pci 0000:01:00.1: [14e4:b340] type 00 class 0x020000
    [ 22.462328] pci 0001:00:00.0: [104c:8888] type 01 class 0x060400
    [ 23.313210] pci 0001:01:00.0: [14e4:b340] type 00 class 0x020000
    [ 24.047956] pci 0001:01:00.1: [14e4:b340] type 00 class 0x020000

  • Kishon,

    it is sporadic that on boot up the SS2 did't scanned the PCIe dev.

    If it is detected, our application detects the and configure PCIe device.

    Now we have to fix the USB crash, any about that?

    Thank you for current support!

    Regards

    Christian

  • Kishon,

    the reason for the crash, when USB is enabled in the device tree, is because XHCI was enabled in the kernel config.

    Without XHCI the device boots up, but the USB functionality isn't available.

    Here the logs of dmesg:

    [ 22.500335] usbcore: registered new interface driver asix
    [ 22.565575] usbcore: registered new interface driver ax88179_178a
    [ 22.639209] usbcore: registered new interface driver cdc_ether
    [ 22.709685] usbcore: registered new interface driver net1080
    [ 22.778063] usbcore: registered new interface driver cdc_subset
    [ 22.849597] usbcore: registered new interface driver zaurus
    [ 22.916936] usbcore: registered new interface driver cdc_ncm
    [ 22.992163] omap_hwmod: usb_otg_ss1: _wait_target_disable failed
    [ 23.065390] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
    [ 23.144268] ehci-pci: EHCI PCI platform driver
    [ 23.197953] ehci-omap: OMAP-EHCI Host Controller driver
    [ 23.261238] usbcore: registered new interface driver usb-storage

    Devicetree:

    &usb1 {
    dr_mode = "host";
    pinctrl-names = "default";
    pinctrl-0 = <&usb1_pins>;
    /* Remove usb3-phy capability, because PCIe2 uses this phy */
    phys = <&usb2_phy1>;
    phy-names = "usb2-phy";
    maximum-speed = "high-speed";
    status = "okay";
    };

    Is there something special todo for thr DRVBUS?

     
     

  • Hi Christian,

    I think it's complicated. So xhci doesn't work in USB2 only mode. Now if we remove USB3 PHY (which actually disables clocking the USB3 part of xhci), xhci still tries to access the USB3 parts which is creating issues.

    So we have to find a way to make xhci operate only in USB2 only mode. Don't think this is supported in upstream kernel as well.

    Are there other USB instances for you to work with?

    Thanks

    Kishon

  • Hi Kishon,

    did I understand you correct, the XHCI kernel support is needed, only EHCI enabled in the kernel will not work?

    The usb1 interface must be used, because it is a legacy HW, where we currently do a OS switch to linux.

    This means no HW change is possible.

    Thx

    Regards

    Christian

  • Hi Christian,

    There is no EHCI controller in dra72. It has only xhci based controller. The xhci driver cannot be used as is since the USB3 part of xhci create issues (as we have used the PHY for PCIe). (if you note you didn't see issues when the PHY was configure for USB).

    Now the xhci driver in kernel should be modified for USB2 only mode. The exact effort or complexity for this is not known.

    Thanks

    Kishon