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.

[参考译文] AM625:USB 探头在系统启动期间偶尔出现故障

Guru**** 2489685 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1553376/am625-usb-probe-occasionally-fails-during-system-startup

器件型号:AM625


工具/软件:

我们的 AM62x 电路板支持两个 USB 端口 USB0 连接至 USB 端口、而 USB1 连接到触摸屏。
在正常引导期间、将有两条“USB BUS Registered“消息。

[    1.279734] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    1.285297] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[    1.293087] xhci-hcd xhci-hcd.0.auto: USB3 root hub has no ports
[    1.299092] xhci-hcd xhci-hcd.0.auto: hcc params 0x0258fe6d hci version 0x110 quirks 0x0000000000010010
[    1.308537] xhci-hcd xhci-hcd.0.auto: irq 243, io mem 0x31000000
[    1.314823] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.01
[    1.323082] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.330296] usb usb1: Product: xHCI Host Controller
[    1.335168] usb usb1: Manufacturer: Linux 6.1.33 xhci-hcd
[    1.340594] usb usb1: SerialNumber: xhci-hcd.0.auto
[    1.345952] hub 1-0:1.0: USB hub found
[    1.349764] hub 1-0:1.0: 1 port detected
[    1.355637] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[    1.361243] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 2
[    1.369028] xhci-hcd xhci-hcd.1.auto: USB3 root hub has no ports
[    1.375032] xhci-hcd xhci-hcd.1.auto: hcc params 0x0258fe6d hci version 0x110 quirks 0x0000000000010010
[    1.384610] xhci-hcd xhci-hcd.1.auto: irq 244, io mem 0x31100000
[    1.390864] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.01
[    1.399222] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.406438] usb usb2: Product: xHCI Host Controller
[    1.411315] usb usb2: Manufacturer: Linux 6.1.33 xhci-hcd
[    1.416814] usb usb2: SerialNumber: xhci-hcd.1.auto
[    1.422161] hub 2-0:1.0: USB hub found
[    1.425967] hub 2-0:1.0: 1 port detected
[    1.431560] cpufreq: cpufreq_online: CPU0: Running at unlisted initial frequency: 1200000 KHz, changing to: 1250000 KHz
[    1.444462] mmc0: CQHCI version 5.10
[    1.450244] mmc1: CQHCI version 5.10

不过、有时会在启动期间执行此操作 USB0 期间未能检测到 USB1 工作正常。 在故障点、系统会暂停约 14 秒。 详细信息如下所示。
发生这种情况后、即使我们重新启动、新系统仍然显示 USB 探头故障—只有完全关闭并重新启动才能解决问题。


[    1.279704] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    1.285264] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[   15.549896] xhci-hcd xhci-hcd.0.auto: can't setup: -110
[   15.555130] xhci-hcd xhci-hcd.0.auto: USB bus 1 deregistered
[   15.560805] xhci-hcd: probe of xhci-hcd.0.auto failed with error -110
[   15.569035] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[   15.574568] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 1
[   15.582357] xhci-hcd xhci-hcd.1.auto: USB3 root hub has no ports
[   15.588361] xhci-hcd xhci-hcd.1.auto: hcc params 0x0258fe6d hci version 0x110 quirks 0x0000000000010010
[   15.597802] xhci-hcd xhci-hcd.1.auto: irq 244, io mem 0x31100000
[   15.604119] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.01
[   15.612378] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[   15.619591] usb usb1: Product: xHCI Host Controller
[   15.624464] usb usb1: Manufacturer: Linux 6.1.33 xhci-hcd
[   15.629856] usb usb1: SerialNumber: xhci-hcd.1.auto
[   15.635212] hub 1-0:1.0: USB hub found
[   15.639013] hub 1-0:1.0: 1 port detected
[   15.644578] cpufreq: cpufreq_online: CPU0: Running at unlisted initial frequency: 1200000 KHz, changing to: 1250000 KHz
[   15.657400] mmc0: CQHCI version 5.10
[   15.663077] mmc1: CQHCI version 5.10

在我们的硬件设计中、为 5V USB0 由 GPIO 使能信号控制、我已经在 U-Boot 中启用了它。

USB 线路上有两个 10 pF 滤波电容器。 这会影响 USB 探头吗?

还有什么可能导致此问题? 谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Stephen:

    该问题似乎是由器件勘误表 i2409 引起的。

    您使用哪个 Processor SDK 版本? 已在 SDK v9.2 和更高版本中实现了 i2409 的软件权变措施。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我们使用 sdk9.00。 Linux 内核为 6.1.33。  是否有补丁来解决此问题?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我在 E2E 主题上找到了两个补丁、但应用它们后、在重复的重启测试期间仍然会出现之前的问题。

     AM6412:勘误表 i2409 需要澄清 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我们的 USB0 端口用于连接 USB 闪存驱动器、而 USB1 用于触摸屏。 在之前的测试中、卡滞 15 秒的电路板已连接触摸屏、没有插入闪存驱动器。 今天,当我在没有触摸屏或闪存驱动器的主板上测试时,它会在错误发生后卡滞 30 秒。 两个总线初始化将每个挂起 15 秒。

    [    1.279738] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [    1.285300] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
    [   15.549952] xhci-hcd xhci-hcd.0.auto: can't setup: -110
    [   15.555184] xhci-hcd xhci-hcd.0.auto: USB bus 1 deregistered
    [   15.560860] xhci-hcd: probe of xhci-hcd.0.auto failed with error -110
    [   15.569083] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
    [   15.574618] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 1
    [   29.838557] xhci-hcd xhci-hcd.1.auto: can't setup: -110
    [   29.843781] xhci-hcd xhci-hcd.1.auto: USB bus 1 deregistered
    [   29.849448] xhci-hcd: probe of xhci-hcd.1.auto failed with error -110
    [   29.857333] cpufreq: cpufreq_online: CPU0: Running at unlisted initial frequency: 1200000 KHz, changing to: 1250000 KHz
    

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    在多次尝试之后、我发现即使未连接触摸屏、它也可以成功初始化。 但是、没有 USB 闪存驱动器的测试始终失败、挂起 15 秒。

    [    1.279628] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [    1.285184] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
    [   15.549823] xhci-hcd xhci-hcd.0.auto: can't setup: -110
    [   15.555056] xhci-hcd xhci-hcd.0.auto: USB bus 1 deregistered
    [   15.560734] xhci-hcd: probe of xhci-hcd.0.auto failed with error -110
    [   15.568948] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
    [   15.574477] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 1
    [   15.582264] xhci-hcd xhci-hcd.1.auto: USB3 root hub has no ports
    [   15.588269] xhci-hcd xhci-hcd.1.auto: hcc params 0x0258fe6d hci version 0x110 quirks 0x0000000000010010
    [   15.597710] xhci-hcd xhci-hcd.1.auto: irq 244, io mem 0x31100000
    [   15.604008] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.01
    [   15.612267] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [   15.619481] usb usb1: Product: xHCI Host Controller
    [   15.624354] usb usb1: Manufacturer: Linux 6.1.33 xhci-hcd
    [   15.629746] usb usb1: SerialNumber: xhci-hcd.1.auto
    [   15.635100] hub 1-0:1.0: USB hub found
    [   15.638902] hub 1-0:1.0: 1 port detected
    [   15.644439] cpufreq: cpufreq_online: CPU0: Running at unlisted initial frequency: 1200000 KHz, changing to: 1250000 KHz
    

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    接下来的几天我都不在办公室了。 我将在下周晚些时候进行研究。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Stephen:

    [引述 userid=“565320" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1553376/am625-usb-probe-occasionally-fails-during-system-startup/5979212

    我在 E2E 主题上找到了两个补丁、但应用它们后、在重复的重启测试期间仍然会出现之前的问题。

     AM6412:勘误表 i2409 需要澄清 

    [/报价]

    这些补丁适用于与 AM62x 器件上不同的 USB 控制器。 要解决 AM62x 上的 i2409 问题、请应用以下 2 个内核补丁。

    https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/commit/arch/arm64/boot/dts/ti/k3-am62-main.dtsi?h=ti-linux-6.1.y&id=a060ca5bf7b73abcdd0dfc32dc06c7dfc2208c55

    https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/commit/drivers/usb/dwc3/dwc3-am62.c?h=ti-linux-6.1.y&id=62d9d1941793ac89b3fa9058ad99404cd327e59a

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    应用补丁后、问题已解决。 谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    很高兴问题得到解决。 感谢您的更新。