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.

[参考译文] SK-AM62A-LP:SK-AM62A-LP:未枚举 UBS1

Guru**** 1520200 points
Other Parts Discussed in Thread: SK-AM62A-LP, AM62A3
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1354084/sk-am62a-lp-sk-am62a-lp-ubs1-is-not-getting-enumerated

器件型号:SK-AM62A-LP
主题中讨论的其他器件: AM62A3

我们将尝试使用评估板的 USB1、但没有针对数据传输进行枚举。 是否需要从"Menu Config"和"DTS"启用任何功能?

 

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

    您好、Jay、

    您是否在 SK-AM62A-LP 上运行 Linux? 请附加完整的控制台引导日志。

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

    是的、我们在运行 Linux SDK 9.1、也尝试使用 Linux  SDK 9.2

      
     

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

    您好、Jay、

    您的'dmesg | grep USB'日志在 SK-AM62A-LP 上是正常的。

    命令"lsusb"的输出是什么?

    如果您将 USB 器件插入其 USB type-A 端口、EVM Linux 控制台将会发生什么情况?

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

    您好!

    lsusb 日志  


    如果将 USB 设备插入 USB Type-A 端口,EVM Linux 控制台将发生什么情况?

    我们要将 USB1端口用作以太网(RNDIS)。 我们已成功建立 USB0。

    在硬件端、我们 通过将 USB 电缆焊接到连接器上来访问 USB (VBUS 未通过电缆连接)。 还将 SoC_USB1_DRVVBUS 引脚设置为高电平、以确保电源开关正常运行。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我们想将 USB1端口用作以太网(RNDIS )。 我们已成功建立 USB0。

    这意味着您希望 USB1端口在设备模式下工作、不是吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这意味着您希望 USB1端口在设备模式下工作,不是吗?



    如果我使用"odprobe g_ether usb0"、该链接将被建立。  
    同样、如果我使用'其他探测器 g_ether USb1"、则链接未 在 SDK 9.1中建立。

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

    modprobe 命令不采用第二个参数- usb0或 usb1,这意味着您不能指定将 USB 小工具驱动程序加载到哪个 USB 接口。

    SK-AM62A-LP USB1端口设计为仅主机端口。 您不能在设备模式下使用它。

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

    您的应用是什么? 为什么需要两个 USB 端口都处于设备模式?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    SK-AM62A-LP USB1端口设计为仅主机端口。 您不能在开箱即用的设备模式下使用它。

    W. r.to AM62A3 (第1239页)的 TRM 文档、USB 子系统可单独用作主机或设备。

    TRM USB

    注:
    我使用的是 SDK 9.1至 Yocto。 如果需要、我可以更改设备树和驱动程序。  
    请告知我们如何在设备模式下使用它、

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

    也就是移动 应用。 其 客户要求在 器件模式下具有2个 USB。

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

    您能否提供移动应用程序的更多详细信息? 为什么在设备模式下需要两个 USB 端口? 您是否可以只使用一个 USB 设备端口、该端口上有多个 USB 小工具功能?

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

    我们有一个自定义连接器、其中 USB0用于 SSH、还有一个 Type C 端口 (USB1)、我们通过该端口需要器件数据传输+电源。 因此、我们需要两个 USB 处于器件模式。  

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

    这两个 USB 以太网端口是否已连接到单个 USB 主机? 或两个不同的 USB 主机连接?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这两个 USB 以太网端口是否连接到单个 USB 主机? 还是两个不同的 USB 主机?

    可以、在不同的时刻有两个不同的主机、而不是同时。

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

    如果不能同时连接到两台不同的主机、为什么无法在不同的时间将 USB0连接到两台主机? 为什么必须使用 USB1? 我正在寻找简化您的系统设计的方法。

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

    我们已准备好硬件设计并正在对其进行测试。

    我们有一个用于 SSH 的自定义连接器和一个用于 设备数据传输+电源的 Type C 端口(USB1)。 因此我们需要两个 USB 设备模式

    有没有任何方法可以在上述配置中使用。

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

    您好、Jay、

    首先、让我们确认一下您的两个 USB 端口是否都可以在设备模式下工作、然后我将介绍如何在这两个端口上加载以太网小工具驱动程序。

    请运行以下命令来将 g_ether 和 g_serial 同时加载到这两个端口、然后将端口连接到 USB 主机、以查看主机是否可以检测 USB 以太网和串行接口。

    # modprobe g_ether
    # modprobe g_serial

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

    基本上、两个端口都在工作。

    第一个 modprobe g_ether 命令已经给出,usb0用作 RNDIS。
    给定了第二个 modprobe g_serial 命令、USB1充当串行。  
    反之亦然。

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

    现在、我如何使其对两者都自动执行呢?

    例如,如果连接了自定义连接器,则 usb0应为 RNDIS。 如果 C 型被连接、那么 USB1应该为 RNDIS。  

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

    您好、Jay、

    两个端口基本上都可以正常工作。

    太棒了!

    现在,要使两个 USB 端口作为 RNDIS 小工具工作,你需要加载相同的 RNDIS 小工具驱动程序两次。 但是、g_ether 不被设计为加载两次。 解决方案是使用 USB configfs 创建具有两个 RNDIS 功能的复合小工具驱动程序。

    有关使用 USB configfs 的详细信息、请参阅内核文档:documentation/usb/gadget_configfs.rst。 我认为对于 USB RNDIS 两种功能、您需要使用名称 rndis.usb0'和 rndis.usb1'。

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

    将在稍后重试、谢谢

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

    抱歉、Jay、我刚刚意识到我的描述不正确。

    解决方案是使用 USB configfs 创建具有两个 RNDIS 功能的复合小工具驱动程序。

    这是要创建一个具有两个小工具功能的 USB 小工具驱动程序。 但这不是您需要的。

    相反,你需要使用 USB configfs 来创建两个小工具,每一个都有一个 RNDIS 功能。 每个小工具驱动程序都将加载到一个 AM62Ax USB 端口。 这是为了解决传统 USB 小工具驱动程序 g_ether 不能加载两次的问题。