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.

[参考译文] AM67:AM67x USB 2.0 测试模式

Guru**** 2530840 points
Other Parts Discussed in Thread: AM62P, AM67

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1541508/am67-am67x-usb-2-0-test-mode

器件型号:AM67
主题中讨论的其他器件:DRA821AM62P

工具/软件:

Champ、  

请建议将寄存器注释设置为分别为 USB0 和 USB1 进入 USB2.0 测试模式。

以下是否推荐用于 USB2.0 USB0 或 USB1 端口?   

另一个 USBx 端口的寄存器地址是什么?

devmem2 0x31000420、带 0xA0
devmem2 0x31000020、带 0x4
devmem2 0x31000424、带 0x40000000

Br、Rich

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

    您好 Rich、

    以下推荐用于 USB2.0 USB0 或 USB1 端口吗?  [/报价]

    您给出的命令适用于 USB0 端口。 (例如:以下命令)

    devmem2 0x31000420、带 0xA0
    devmem2 0x31000020、带 0x4
    devmem2 0x31000424、带 0x40000000

    USB1 端口 、命令将为:

    devmem2 0x31210480、带 0xA

    devmem2 0x31210080、带 0x4

    devmem2 0x31210484、带 0x40000000

    此致

    Gokul

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

    解锁线程以继续对话。

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

    谢谢 Bin、  

    Gokul,  

    客户报告了这些寄存器可能不会被纠正、当执行到 devmem2 0x31210484 且带有 0x40000000 时、客户会发现总线错误。

    我曾在 AM67x EVM 上尝试过、但 USB1 上有一个 USB 集线器、因此它将在设置  devmem2 0x31210480(带 0xA0)后重新运行

    此外、将 devmem2 0x31210484 设置为 0x40000000 会使该寄存器变为 0xF0000000、从而无法使 USB1 进入测试模式。  

    我检查寄存器 Excel 文件中的寄存器名称和设置、发现寄存器位与 USB0 相同、但仍无法确保寄存器是否用于 USB1。   

    您能否再次确认这一点?

    Br、Rich

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

    您好 Rich、

    此外、设置 devmem2 0x31210484 w 0x40000000 会使该寄存器变为 0xF0000000、从而无法使 USB1 进入测试模式。  [/报价]

    我认为这是因为端口不处于断电状态、所以在尝试设置非零值(如 0x40000000)以指示端口测试控制错误时、该寄存器会设置为 0xF0000000。

    我在 AM67x EVM 上试过、但 USB1 上有一个 USB 集线器、因此它会在设置  devmem2 0x31210480 w 0xA0
    后重新仿真

    因此、我认为我们可能必须在设置端口测试控制位之前进入 PLS=Disabled 状态。

    因此、您可以尝试以下序列一次;

    devmem2 0x31210480 w 0x80 (将其设置为 PLS=禁用状态)

    devmem2 0x31210080、带 0x4

    devmem2 0x31210484、带 0x40000000  

    devmem2 0x31210480、带 0xA  

    此致

    Gokul

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

    Gokul,  

    对于 USB0、它是有效的。 客户连接 USB 2.0 闪存盘、然后输入所有建议、然后取出 USB 闪存盘、在取出 USB 闪存盘后连接测试装置。  

    对于 USB1、客户将 USB1 (USB2.0)+ SERDES0 (USB3.0) 连接为 USB 3.0 Type-A 连接器。 客户尝试了您为 USB1 提供的评论、但仍然看到总线错误。  

    测试过程与 USB0 相同。  

    我原本认为对 USB1 的推荐应该与 USB0 相同、但只是更改基地址。  

    这是正确的吗?  对于 USB1、我们尝试了 devmem2 0x31210480 w 0xa(以及 0xA0、我认为应该是 0xA0)、但两者都失败了。  

    然后,我们尝试了新的建议集,禁用 PLS ,结果是作为捕获控制台屏幕。  

    请 帮助确认我们应该对 USB1 使用的建议。  

    ---------------------------------------------------------------------------------------------------------------------------------------------

     您给出的命令适用于  USB0 端口。 (例如:以下命令)

    devmem2 0x31000420、带 0xA0
    devmem2 0x31000020、带 0x4
    devmem2 0x31000424、带 0x40000000

    USB1 端口  、命令将为:

    devmem2 0x31210480、带 0xA

    devmem2 0x31210080、带 0x4

    devmem2 0x31210484、带 0x40000000

    ------------------------------------------------------------------------------------------------------------------------------------------

    Br、Rich

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

    您好 Rich、

    实际上、同样的命令在我这边起作用。

    您能否尝试使用以下 dtb 并测试一次:

    e2e.ti.com/.../k3_2D00_j722s_2D00_evm.dtb

    此致

    Gokul

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

    Gokul,  

    EVM 上的结果与我的结果相同。  

    您刚才复制了我在 EVM 上报告的内容、因为 EVM 上有集线器。  

    如果您在写入后读出、最后一个命令“devmem2 0x31210484 w 0x40000000“实际上会得到 0xF0000000。

     

    root@am67-sk:~#
    Root@am67-sk:~# devmem2 0x31210480
    /dev/mem 已打开。
    存储器映射到地址 0xffff848d4000。
    读取地址 0x31210480 (0xffff848d4480):0x00000E03
    root@am67-sk:~# devmem2 0x31210480、带 0xA0
    /dev/mem 已打开。
    映射到地址 0xffa4eac000 的存储器。
    读取地址 0x31210480 (0xffffa4eac480):0x00000E03
    写入地址 0x31210480 (0xffa4eac480):0x000000A0、回读 0x000000A0
    root@am67-sk:~#[ 113.027530] USB 1-1:USB 断开连接、器件编号 2
    [113.391425] USB 1-1:使用 xhci-hcd 的新高速 USB 设备 3
    [113.544698]集线器 1-1:1.0:找到 USB 集线器
    [113.548571]集线器 1-1:1.0:检测到 4 个端口
    [113.555276]集线器 1-1:1.0:找到 USB 集线器
    [113.559176]集线器 1-1:1.0:检测到 4 个端口
    devmem2 0x31210480
    /dev/mem 已打开。
    映射到地址 0xffad604000 的存储器。
    读取地址 0x31210480 (0xffad60480):0x00000E03
    Root@am67-sk:~# devmem2 0x31210080
    /dev/mem 已打开。
    存储器映射到地址 0xff807c9000。
    读取地址 0x31210080 (0xff807c9080):0x00000805
    root@am67-sk:~# devmem2 0x31210080、带 0x4
    /dev/mem 已打开。
    映射到地址 0xffffb6d02000 的存储器。
    读取地址 0x31210080 (0xffffb6d02080):0x00000805
    写入地址 0x31210080 (0xffb6d02080):0x00000004、回读 0x00000004
    Root@am67-sk:~# devmem2 0x31210080
    /dev/mem 已打开。
    存储器映射到地址 0xff82d01000。
    读取地址 0x31210080 (0xff82d01080):0x00000004
    Root@am67-sk:~# devmem2 0x31210484
    /dev/mem 已打开。
    映射到地址 0xffffb1029000 的存储器。
    读取地址 0x31210484 (0xffffb1029484):0x00000000
    root@am67-sk:~# devmem2 0x31210484、带 0x40000000
    /dev/mem 已打开。
    映射到地址 0xff88aec000 的存储器。
    读取地址 0x31210484 (0xff88aec484):0x00000000
    写入地址 0x31210484 (0xff88aec484):0x40000000、读回 0x40000000
    Root@am67-sk:~# devmem2 0x31210484
    /dev/mem 已打开。
    存储器映射到地址 0xff9e0f5000。
    读取地址 0x31210484 (0xff9e0f5484):0xF0000000
    root@am67-sk:~#

    Br、Rich

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

    root@ecu1270-6800d0:~# devmem2 0x31210480
    /dev/mem 已打开。
    存储器映射到地址 0xff88cfc000。
    地址 0x31210480 (0xff88cfc480) 处的值:0xA0002A0
    root@ecu1270-6800d0:~# devmem2 0x31210480、带 0xA0
    /dev/mem 已打开。
    存储器映射到地址 0xffffb8037000。
    地址 0x31210480 (0xffb8037480) 处的值:0xA0002A0
    写入 0xA0;回读 0x80
    root@ecu1270-6800d0:~# devmem2 0x31210480
    /dev/mem 已打开。
    映射到地址 0xff90d46000 的存储器。
    地址 0x31210480 (0xffff90d46480) 处的值:0x80
    root@ecu1270-6800d0:~# devmem2 0x31210080
    /dev/mem 已打开。
    映射到地址 0xffff8d530000 的存储器。
    地址 0x31210080 (0xffff8d530080) 处的值:0x805
    root@ecu1270-6800d0:~# devmem2 0x31210080 w 0x4
    /dev/mem 已打开。
    映射到地址 0xff83c3e000 的存储器。
    地址 0x31210080 处的值 (0xff83c3e080):0x805
    写入 0x4;读回 0x4
    root@ecu1270-6800d0:~# devmem2 0x31210080
    /dev/mem 已打开。
    映射到地址 0xffff83112000 的存储器。
    地址 0x31210080 处的值 (0xff83112080):0x4
    root@ecu1270-6800d0:~# devmem2 0x31210484
    /dev/mem 已打开。
    存储器映射到地址 0xffa104f000。
    总线错误
    root@ecu1270-6800d0:~# devmem2 0x31210484 w 0x40000000
    /dev/mem 已打开。
    存储器映射到地址 0xff94b6000。
    总线错误
    root@ecu1270-6800d0:~# devmem2 0x31210484
    /dev/mem 已打开。
    存储器映射到地址 0xffffb97b3000。
    总线错误

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

    Gokul,  

    我输入的日志位于 DRA821 EVM 上、我相信结果与您在 DRA821 EVM 上的结果相同。  

    客户日志位于自己的电路板上、USB1 以 SERDES0 作为 USB 3.0 连接器。

    它们最初(之前的硬件版本)使用带 SERDES0 的 USB0 作为 USB 3.0 连接器、他们可以使用我们提供的建议来进入 USB 2.0 测试模式。  

    现在、在其当前版本的板 (USB1 + SERDES0) 上、他们在访问 0x31210484 时会看到总线错误。

    在 USB1 上完成 USB2.0 测试模式。  

    是否有内部测试或验证方法来证明这一点?  

    Br、Rich  

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

    尊敬的 Rich Chen:

    在 DRA821EVM 上、它不会失败、因为它会重新读回写入的相同值。 从而证明它正常工作。

    现在在其当前版本的板 (USB1 + SERDES0) 上、访问 0x31210484 时、他们会看到总线错误。

    但是、由于从(具有 SERDES0 的 USB0)更改为(具有 SERDES1 的 USB1)、他们的定制板可能会失败。

    是否有内部测试或验证方法来证明这一点?  [/报价]

    我也将在 Shreyas 中循环以查看此查询。  

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid=“9853" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1541508/am67-am67x-usb-2-0-test-mode/5994472

    USB1 端口  、命令将为:

    devmem2 0x31210480、带 0xA

    devmem2 0x31210080、带 0x4

    devmem2 0x31210484、带 0x40000000

    [/报价]

    丰富、

    否、第一个命令是 devmem2 0x31210480(带 0xA0)。 因为位 0:3 是只读的。

    由于有集线器、我们尚未测试 USB1、因此无法测试 USB2.0 测试模式。  

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

    Shreyas,  

    是的、我们首先尝试过、您应该能够从我们使用的控制台中的赞扬中得知。   

    devmem2 0x31210480、带 0xA0

    devmem2 0x31210080、带 0x4

    devmem2 0x31210484、带 0x40000000

    我了解 EVM 上的 USB 集线器案例、客户现在在自己的电路板上遇到问题、需要一个指南或解决方案才能进入测试模式。  

    这是客户端的 MP 阶段、这是生产的门限项目。  

    我们在 USB3 和 PCIe 合规性测试上花费了太多时间、能否让团队研究这个问题并在本周前获得解决方案?   

    Br、Rich

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

    您好 Rich、

    很抱歉、延迟的回复。

    您能分享定制电路板的 USB 和串行器/解串器原理图吗? 我已经要求 Shreyas 去看看它。

    此致

    Gokul

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

    Gokul,  

    给你。  

    Br、Rich

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

    您好 Rich、

    正如我在内部讨论过的、需要注意以下几点:

    在设备树中、您需要将 USB1 dr_mode 设置为主机、而不是 OTG 或设备模式。 请检查并确认。

    此外、我们无需在 USB1 上设置 USB 集线器、因为这会阻止合规性。 我将与原理图专家一同检查 USB 原理图。  

    我可以通过 AM62P EVM 进行检查、看看是否可以在此基础上复制它。 如果它有 USB 集线器,这可能是一个问题,但我会告诉你,尽管如此。

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

    丰富、

    对于 USB1、是需要符合主机模式还是器件模式要求? 所有命令都适用于主机模式、而不是器件模式。  

    器件模式需要使用 xHSETT 电气测试套件来发送测试数据包。  

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

    Shreyas,  

    USB1 是主机模式、与 SERDES0 相结合作为 USB Type-C 连接器。

    软件配置也是主机模式。

    客户使用 USB 2.0 闪存盘进行测试和工作。

    Br、Rich  

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

    丰富、

    当我看到最新的 TRM 寄存器 Excel 表时、会发现有不同的寄存器偏移量:  

    请尝试以下命令并告诉我:  

    devmem2 0x31200480、带 0xA0

    devmem2 0x31200080、带 0x4

    devmem2 0x31200484(带 0x40000000)

    显然、这来自之前版本的 TRM (RevA)、而 RevB 版本的基地址为 0x3121xxxx。 我的道歉。

    我可以在我这边尝试一下、一旦我设置好电路板、我就会告诉您。

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

    丰富、

    我这边的更新是 devmem 命令正常工作、我没有看到任何总线错误或 0xF0000000 的回读。

    我在 USB1 的示波器上看到了合规模式、但我认为它们来自 USB3.0、因为 USB1 同时支持 USB2.0 和 USB3.0。

    我会再试一点、并向您提供反馈。  

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

    Shreyas,  

    您能否确认所使用的 AM67x SOC 芯片版本?  

    客户在自己的电路板上尝试、我在 AM67x EVM 上尝试过、所有寄存器访问都将出现总线错误。  

    顶部的 EVM 示例备注是 J722S5AAMW。

    devmem2 0x31200480

    devmem2 0x31200080

    第 484 章

    您怎么看不到总线错误?  

    是否有不同版本的样本?  

    Root@am67-sk:~# devmem2 0x31200480
    /dev/mem 已打开。
    [54.431291] kauditd_printk_skb:已抑制 12 次回调
    映射到地址 0xffffb22da000 的存储器。
    [54.431305] audit: type=1701 audit(1709118415.354:32): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=kernel pid=1195 comm=“devmem2" exe="“ exe="/usr/bin/devmem2“/usr/bin/devmem2 sig =7 res=1
    [54.459198]审计:type=1334 审计 (1709118415.382:33):prog-id=23 op=load
    [54.466078]审计:type=1334 审计 (1709118415.386:34):prog-id=24 op=load
    [54.472927]审计:type=1334 审计 (1709118415.394:35):prog-id=25 op=load
    总线错误(核心转储)
    root@am67-sk:~#[ 54.831141] audit: type=1334 audit(1709118415.754:36):prog-id=25 op=unload
    [54.838149] audit: type=1334 audit(1709118415.754:37):prog-id=24 op=unload
    [54.845127] audit: type=1334 audit(1709118415.754:38):prog-id=23 op=unload
    devmem2 0x31200480
    /dev/mem 已打开。[ 64.618705]审计:type=1701 审计 (1709118425.538:39):auid=4294967295 uid=0 gid=0 ses=4294967295 subj=kernel pid=1203 comm=“devmem2" exe"“ exe"/usr/bin/devmem2“/usr/bin/devmem2 sig =7 res=1

    存储器映射到地址 0xffffbe997000。
    [64.646237]审计:type=1334 审计 (1709118425.566:40):prog-id=26 op=load
    [64.653128]审计:type=1334 审计 (1709118425.574:41):prog-id=27 op=load
    [64.660002] audit: type=1334 audit(1709118425.582:42):prog-id=28 op=load
    总线错误(核心转储)
    root@am67-sk:~#[ 64.999146] audit:type=1334 audit (1709118425.922:43):prog-id=28 op=unload
    [65.006147] audit: type=1334 audit(1709118425.922:44): prog-id=27 op=unload
    [65.013128]审计:type=1334 审计 (1709118425.922:45):prog-id=26 op=unload
    root@am67-sk:~#
    root@am67-sk:~#
    root@am67-sk:~#
    Root@am67-sk:~# devmem2 0x31200480、带 0xA0
    /dev/mem 已打开。
    [73.894667] audit: type=1701 audit(1709118434.814:46): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=kernel pid=1211 comm=“devmem2" exe="“ exe="/usr/bin/devmem2“/usr/bin/devmem2 sig =7 res=1
    映射到地址 0xff8de9c000 的存储器。
    [73.922074]审计:type=1334 审计 (1709118434.842:47):prog-id=29 op=load
    [73.928962]审计:type=1334 审计 (1709118434.850:48):prog-id=30 op=load
    [73.935811]审计:type=1334 审计 (1709118434.858:49):prog-id=31 op=load
    总线错误(核心转储)
    root@am67-sk:~#[ 74.267131] audit: type=1334 audit(1709118435.190:50):prog-id=31 op=unload
    [74.274137] audit: type=1334 audit(1709118435.190:51):prog-id=30 op=unload
    [74.281121] audit: type=1334 audit(1709118435.190:52): prog-id=29 op=unload

    Root@am67-sk:~# devmem2 0x31200480
    /dev/mem 已打开。
    [84.094684]审计:type=1701 审计 (1709118445.014:53):auid=4294967295 uid=0 gid=0 ses=4294967295 subj=kernel pid=1219 comm=“devmem2" exe"“ exe"/usr/bin/devmem2“/usr/bin/devmem2 sig =7 res=1
    存储器映射到地址 0xff87762000。
    [84.122676]审计:type=1334 审计 (1709118445.042:54):prog-id=32 op=load
    [84.129577]审计:type=1334 审计 (1709118445.050:55):prog-id=33 op=load
    [84.136431]审计:type=1334 审计 (1709118445.058:56):prog-id=34 op=load
    总线错误(核心转储)
    root@am67-sk:~#[ 84.451210]审计:type=1334 审计 (1709118445.374:57):prog-id=34 op=unload
    [84.458222] audit: type=1334 audit(1709118445.374:58):prog-id=33 op=unload
    [84.465201]审计:type=1334 审计 (1709118445.374:59):prog-id=32 op=unload

    Root@am67-sk:~# devmem2 0x31200080
    /dev/mem 已打开。
    [ 192.178734]审计:type=1701 审计 (1709118553.098:60):auid=4294967295 uid=0 gid=0 ses=4294967295 subj=kernel pid=1227 comm=“devmem2" exe"“ exe"/usr/bin/devmem2“/usr/bin/devmem2 sig =7 res=1
    映射到地址 0xff8a693000 的存储器。
    [ 192.206161] audit: type=1334 audit(1709118553.126:61):prog-id=35 op=load
    [ 192.213043]审计:type=1334 审计 (1709118553.134:62):prog-id=36 op=load
    [192.219895]审计:type=1334 审计 (1709118553.142:63):prog-id=37 op=load
    总线错误(核心转储)
    root@am67-sk:~#[ 192.543224] audit:type=1334 audit (1709118553.466:64):prog-id=37 op=unload
    [192.550233] audit: type=1334 audit(1709118553.466:65):prog-id=36 op=unload
    [ 192.557206] audit:type=1334 audit(1709118553.466:66):prog-id=35 op=unload

    Root@am67-sk:~# devmem2 0x31200080
    /dev/mem 已打开。
    [269.622656]审计:type=1701 审计 (1709118630.542:67):auid=4294967295 uid=0 gid=0 ses=4294967295 subj=kernel pid=1235 comm=“devmem2" exe"“ exe"/usr/bin/devmem2“/usr/bin/devmem2 sig =7 res=1
    映射到地址 0xffffa8aa0000 的存储器。
    [269.650299] audit: type=1334 audit(1709118630.570:68):prog-id=38 op=load
    [269.657189] audit: type=1334 audit(1709118630.578:69): prog-id=39 op=load
    [269.664039]审计:type=1334 审计 (1709118630.586:70):prog-id=40 op=load
    总线错误(核心转储)
    root@am67-sk:~#[ 269.979249] audit: type=1334 audit(1709118630.902:71):prog-id=40 op=unload
    [ 269.986249] audit: type=1334 audit(1709118630.902:72):prog-id=39 op=unload
    [ 269.993230]审计:type=1334 审计 (1709118630.902:73):prog-id=38 op=unload
    第 484 章
    /dev/mem 已打开。
    [294.542676]审计:type=1701 审计 (1709118655.462:74):auid=4294967295 uid=0 gid=0 ses=4294967295 subj=kernel pid=1243 comm=“devmem2" exe"“ exe"/usr/bin/devmem2“/usr/bin/devmem2 sig =7 res=1
    映射到地址 0xff963ff000 的存储器。
    [294.570722]审计:type=1334 审计 (1709118655.490:75):prog-id=41 op=load
    [294.577620]审计:type=1334 审计 (1709118655.498:76):prog-id=42 op=load
    [ 294.584484]审计:type=1334 审计 (1709118655.506:77):prog-id=43 op=load
    总线错误(核心转储)
    root@am67-sk:~#[ 294.911149] audit: type=1334 audit(1709118655.834:78): prog-id=43 op=unload
    [294.918162] audit: type=1334 audit(1709118655.834:79): prog-id=42 op=unload
    [ 294.925138]审计:type=1334 审计 (1709118655.834:80):prog-id=41 op=unload

    Br、Rich

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

    root@j722s-evm:~# devmem2 0x31210480、带 0xA0
    /dev/mem 已打开。
    映射到地址 0xffffbb6fd000 的存储器。
    读取地址 0x31210480 (0xffffbb6fd480):0x00000D60
    写入地址 0x31210480 (0xffffbb6fd480):0x000000A0、回读 0x000000A0
    devmem2 0x31210484、带 0x40000000
    root@j722s-evm:~# devmem2 0x31210080、带 0x4
    /dev/mem 已打开。
    地址 0xffffa4d57000 映射的存储器。
    读取地址 0x31210080 (0xffa4d57080):0x00000004
    写入地址 0x31210080 (0xffa4d57080):0x00000004、回读 0x00000004
    root@j722s-evm:~# devmem2 0x31210484、带 0x40000000
    /dev/mem 已打开。
    存储器映射到地址 0xffffb2787000。
    读取地址 0x31210484 (0xffffb2787484):0x40000000
    写入地址 0x31210484 (0xffffb2787484):0x40000000、读回 0x40000000
    root@j722s-evm:~#
    root@j722s-evm:~# devmem2 0x31210484
    /dev/mem 已打开。
    映射到地址 0xff86f40000 的存储器。
    读取地址 0x31210484 (0xffff86f40484):0x40000000

    我在 AM67 EVM 上没有看到总线错误。

    这是我目前在示波器上看到的内容。 我还在研究这个问题。  

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

    Shreyas,  

    我能否确认您使用的是哪款 AM67x EVM?  

    我相信我们使用的 EVM 如下所示。  

    https://www.ti.com/tool/J722SXH01EVM

    如果您使用的是该板、USB1 后面有一个 USB 集线器、当发出 0xA0 到 0x31210480 时、它将断开 USB 集线器、然后再次进行连接。  

    您如何在日志中不会收到相同的消息? 是否断开 USB 集线器与 USB1 的连接?  

    root@am67-sk:~# devmem2 0x31210480、带 0xA0
    /dev/mem 已打开。
    映射到地址 0xffa4eac000 的存储器。
    读取地址 0x31210480 (0xffffa4eac480):0x00000E03
    写入地址 0x31210480 (0xffa4eac480):0x000000A0、回读 0x000000A0
    root@am67-sk:~#[ 113.027530] USB 1-1:USB 断开连接、器件编号 2
    [113.391425] USB 1-1:使用 xhci-hcd 的新高速 USB 设备 3
    [113.544698]集线器 1-1:1.0:找到 USB 集线器
    [113.548571]集线器 1-1:1.0:检测到 4 个端口
    [113.555276]集线器 1-1:1.0:找到 USB 集线器
    [113.559176]集线器 1-1:1.0:检测到 4 个端口

    在客户主板上、当发出 0xA0 到 0x31210480 时、他们将看不到 USB 集线器断开连接然后连接消息。  

    但是、将 0x4 写入 0x312100080(无总线错误)后、将 0x40000000 写入 0x31210484 将会收到总线错误。  

    是什么导致我们的电路板出现差异? 您能检查一下所用 EVM 上的 SOC 标识吗?

    在哪些情况下 SOC PG 版本可能不同?  

     

    root@ecu1270-6800d0:~# devmem2 0x31210484
    /dev/mem 已打开。
    存储器映射到地址 0xffa104f000。
    总线错误
    root@ecu1270-6800d0:~# devmem2 0x31210484 w 0x40000000
    /dev/mem 已打开。
    存储器映射到地址 0xff94b6000。
    总线错误
    root@ecu1270-6800d0:~# devmem2 0x31210484
    /dev/mem 已打开。
    存储器映射到地址 0xffffb97b3000。

    Br、Rich

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

    您好 Rich、

    在我们发言时、我正在与我的同事(软件应用程序)和其他 USB 专家进行讨论。  

    我使用的是您所示的通用 EVM (PROC170E1 (003))。 我拥有的器件是 HS 器件;我只能看到 TI J722S5A(A?) 但是、我不能清楚地看到上面 的标记、因为它被用 sharpie 标记的 HS 掩盖了。  

    提示符下的 uname -a 显示如下:

    Linux j722s-evm 6.6.4.44-ti-gd3da65f1381e-dirty #7 SMP prept Thu 8 月 28 日 15:25:39 CDT 2025 AArch64 GNU/Linux -->表示其 SDK10.1。

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

    您好 Rich、

    请应用以下差异、以便在 USB 2.0 模式下启用 USB1 并进入测试模式:

    diff --git a/arch/arm64/boot/dts/ti/k3-j722s-evm.dts b/arch/arm64/boot/dts/ti/k3-j722s-evm.dts
    index 90226f06ba61..dffe3fcc84af 100644
    --- a/arch/arm64/boot/dts/ti/k3-j722s-evm.dts
    +++ b/arch/arm64/boot/dts/ti/k3-j722s-evm.dts
    @@ -1183,14 +1183,13 @@ &usbss1 {
            pinctrl-names = "default";
            pinctrl-0 = <&main_usb1_pins_default>;
            ti,vbus-divider;
    +       ti,usb2-only;
            status = "okay";
     };
    
     &usb1 {
            dr_mode = "host";
    -       maximum-speed = "super-speed";
    -       phys = <&serdes0_usb_link>;
    -       phy-names = "cdns3,usb3-phy";
    +       maximum-speed = "high-speed";
     };
    
     &mcasp1 {

    应用上述 DIFF 后、J722S-EVM 上的输出如下:

    root@j722s-evm:~# lsusb -t
    /:  Bus 001.Port 001: Dev 001, Class=root_hub, Driver=xhci-hcd/1p, 480M
        |__ Port 001: Dev 002, If 0, Class=Hub, Driver=hub/4p, 480M
            |__ Port 002: Dev 003, If 0, Class=Mass Storage, Driver=usb-storage, 480M
    /:  Bus 002.Port 001: Dev 001, Class=root_hub, Driver=xhci-hcd/1p, 5000M
    root@j722s-evm:~#
    root@j722s-evm:~# devmem2 0x31210480 w 0xA0
    /dev/mem opened.
    Memory mapped at address 0xffffb995d000.
    Read at address  0x31210480 (0xffffb995d480): 0x00000E03
    Write at address 0x31210480 (0xffffb995d480): 0x000000A0, readback 0x000000A0
    root@j722s-evm:~# [   68.887098] usb 1-1-port2: cannot reset (err = -71)
    [   68.892120] usb 1-1-port2: cannot reset (err = -71)
    [   68.897081] usb 1-1-port2: cannot reset (err = -71)
    [   68.902058] usb 1-1-port2: cannot reset (err = -71)
    [   68.907067] usb 1-1-port2: cannot reset (err = -71)
    [   68.911947] usb 1-1-port2: Cannot enable. Maybe the USB cable is bad?
    [   68.918489] usb 1-1-port2: cannot disable (err = -71)
    [   68.923626] usb 1-1-port2: cannot reset (err = -71)
    [   68.928579] usb 1-1-port2: cannot reset (err = -71)
    [   68.933576] usb 1-1-port2: cannot reset (err = -71)
    [   68.938536] usb 1-1-port2: cannot reset (err = -71)
    [   68.943489] usb 1-1-port2: cannot reset (err = -71)
    [   68.948372] usb 1-1-port2: Cannot enable. Maybe the USB cable is bad?
    [   68.954890] usb 1-1-port2: cannot disable (err = -71)
    [   68.960062] usb 1-1-port2: cannot reset (err = -71)
    [   68.965021] usb 1-1-port2: cannot reset (err = -71)
    [   68.969976] usb 1-1-port2: cannot reset (err = -71)
    [   68.974935] usb 1-1-port2: cannot reset (err = -71)
    [   68.979892] usb 1-1-port2: cannot reset (err = -71)
    [   68.984774] usb 1-1-port2: Cannot enable. Maybe the USB cable is bad?
    [   68.991328] usb 1-1-port2: cannot disable (err = -71)
    [   68.996459] usb 1-1-port2: cannot reset (err = -71)
    [   69.001454] usb 1-1-port2: cannot reset (err = -71)
    [   69.006407] usb 1-1-port2: cannot reset (err = -71)
    [   69.011402] usb 1-1-port2: cannot reset (err = -71)
    [   69.016391] usb 1-1-port2: cannot reset (err = -71)
    [   69.021273] usb 1-1-port2: Cannot enable. Maybe the USB cable is bad?
    [   69.027788] usb 1-1-port2: cannot disable (err = -71)
    [   69.032917] usb 1-1-port2: cannot disable (err = -71)
    [   69.038152] hub 1-1:1.0: hub_ext_port_status failed (err = -71)
    [   69.150496] sda: detected capacity change from 60995328 to 0
    
    root@j722s-evm:~# devmem2 0x31210080 w 0x4
    /dev/mem opened.
    Memory mapped at address 0xffff926f4000.
    Read at address  0x31210080 (0xffff926f4080): 0x00000805
    Write at address 0x31210080 (0xffff926f4080): 0x00000004, readback 0x00000004
    root@j722s-evm:~#
    root@j722s-evm:~# devmem2 0x31210484 w 0x40000000
    /dev/mem opened.
    Memory mapped at address 0xffffaf90e000.
    Read at address  0x31210484 (0xffffaf90e484): 0x00000000
    Write at address 0x31210484 (0xffffaf90e484): 0x40000000, readback 0x40000000
    root@j722s-evm:~#
    root@j722s-evm:~# devmem2 0x31210484
    /dev/mem opened.
    Memory mapped at address 0xffffac316000.
    Read at address  0x31210484 (0xffffac316484): 0x40000000
    root@j722s-evm:~#

    此致、
    Siddharth。

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

    Siddharth、  

    这适用于 SDK 11 吗? 该补丁只是为了启用测试模式还是应该应用于产品大规模生产?  

    应用此补丁后 USB3.0 是否仍然正常工作?  

    我尝试了 SDK9/10/11 .wic 映像、并获得了与我描述的相同的简历。  

    我想知道 Shreyas 如何在 AM67x EVM 上生成测试图形。  

    在测试之前、他是否已经应用了此补丁?  

    Br、Rich

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

    尊敬的 Gokul:

    您能为我们提供 dtso 来差分 k3-j722s-evm.dtb 

    THX

    Will

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

    Siddharth、  

    这是应用补丁后的日志。  

    我们仍然会观察到 USB 集线器断开连接、然后再次连接。  

    日志与您的日志不同。 这是预期的结果 、因为我们使用 AM67x SK。  

    root@am67-sk:~# lsusb -t
    /:bus 001.Port 001:dev 001、Class=root_hub、Driver=xhci-hcd/1p、480M
    |_端口 001:设备 002、如果为 0、类=Hub、驱动程序=HUB/4p、480M
    /:BUS 002.Port 001:DEV 001、Class=root_hub、Driver=xhci-hcd/1p、5000m
    |_端口 001:DEV 002、如果为 0、Class=Hub、Driver=HUB/4p、5000m
    root@am67-sk:~# devmem2 0x31210480、带 0xA0
    /dev/mem 已打开。
    存储器映射到地址 0xff8789c000。
    读取地址 0x31210480 (0xffff8789c480):0x00000E03
    写入地址 0x31210480 (0xffff8789c480):0x000000A0、回读 0x000000A0
    root@am67-sk:~#[ 110.434084] USB 1-1:USB 断开连接、器件编号 2
    [110.781960] USB 1-1:使用 xhci-hcd 的新高速 USB 设备 3
    [110.923295]集线器 1-1:1.0:找到 USB 集线器
    [110.927183]集线器 1-1:1.0:检测到 4 个端口

    root@am67-sk:~#
    root@am67-sk:~# devmem2 0x31210080、带 0x4
    /dev/mem 已打开。
    映射到地址 0xffff9139b000 的存储器。
    读取地址 0x31210080 (0xff9139b080):0x00000805
    写入地址 0x31210080 (0xff9139b080):0x00000004、回读 0x00000004
    root@am67-sk:~# devmem2 0x31210484、带 0x40000000
    /dev/mem 已打开。
    映射到地址 0xffffbc370000 的存储器。
    读取地址 0x31210484 (0xffffbc370484):0x00000000
    写入地址 0x31210484 (0xffffbc370484):0x40000000、读回 0x40000000
    root@am67-sk:~#  

    Shreyas,  


    我发现您使用的是 J722S EVM、因此不确定为什么没有遇到 USB 1-1 端口 2 无法复位 (err =–71)?  

    如何获得 J722S EVM 上的 USB 眼图?  

    后面是否没有 USB 集线器?  

    root@j722s-evm:~# devmem2 0x31210480、带 0xA0
    /dev/mem 已打开。
    存储器映射到地址 0xffffb995d000。
    读取地址 0x31210480 (0xffffb995d480):0x00000E03
    写入地址 0x31210480 (0xffb995d480):0x000000A0、回读 0x000000A0
    root@j722s-evm:~#[ 68.887098] USB 1-1-port2:无法复位 (err =–71)
    [68.892120] USB 1-1-port2:无法复位 (err =–71)
    [68.897081] USB 1-1-port2:无法复位 (err =–71)
    [68.902058] USB 1-1-port2:无法复位 (err =–71)
    [68.907067] USB 1-1-port2:无法复位 (err =–71)
    [68.911947] USB 1-1-port2:无法启用。 可能是 USB 电缆损坏了?
    [68.918489] USB 1-1-port2:无法禁用 (err =–71)
    [68.923626] USB 1-1-port2:无法重置 (err =–71)
    [68.928579] USB 1-1-port2:无法复位 (err =–71)
    [68.933576] USB 1-1-port2:无法重置 (err =–71)
    [68.938536] USB 1-1-port2:无法重置 (err =–71)
    [68.943489] USB 1-1-port2:无法复位 (err =–71)
    [68.948372] USB 1-1-port2:无法启用。 可能是 USB 电缆损坏了?
    [68.954890] USB 1-1-port2:无法禁用 (err =–71)
    [68.960062] USB 1-1-port2:无法复位 (err =–71)
    [68.965021] USB 1-1-port2:无法复位 (err =–71)
    [68.969976] USB 1-1-port2:无法复位 (err =–71)
    [68.974935] USB 1-1-port2:无法复位 (err =–71)
    [68.979892] USB 1-1-port2:无法复位 (err =–71)
    [68.984774] USB 1-1-port2:无法启用。 可能是 USB 电缆损坏了?
    [68.991328] USB 1-1-port2:无法禁用 (err =–71)
    [68.996459] USB 1-1-port2:无法复位 (err =–71)
    [69.001454] USB 1-1-port2:无法复位 (err =–71)
    [69.006407] USB 1-1-port2:无法重置 (err =–71)
    [69.011402] USB 1-1-port2:无法复位 (err =–71)
    [69.016391] USB 1-1-port2:无法复位 (err =–71)
    [69.021273] USB 1-1-port2:无法启用。 可能是 USB 电缆损坏了?
    [69.027788] USB 1-1-port2:无法禁用 (err =–71)
    [69.032917] USB 1-1-port2:无法禁用 (err =–71)
    [69.038152] HUB 1-1:1.0:HUB_EXT_PORT_STATUS 失败(错误=–71)
    [69.150496] sda:检测到的容量从 60995328 变为 0

    Br、Rich

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

    是的、J722S EVM 上有一个集线器。

    昨天、我们完全禁用了 USB0 并启用了 USB1、还选择了 USB_MUX_SEL 为高电平有效和 output_high、以确保选择 USB1 多路复用器、然后在集线器的输入端进行测量、我看到测试数据包随即发出。

    我将请求我用来尝试的补丁。

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

    大家好!

    附加补丁:

    e2e.ti.com/.../0001_2D00_Enable_2D00_only_2D00_USB1_2D00_in_2D00_2.0_2D00_mode_2D00_disable_2D00_USB0.patch

    Regardsm

    Takuma