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:在外设模式下未检测到 USB0

Guru**** 2401415 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1484647/am625-usb0-is-not-detected-in-paripheral-mode

器件型号:AM625

工具与软件:

您好、TI:  

Yocto Linux SDK 9.0

我们尝试将 USB0配置为外围设备、但当我们尝试控制主机 PC 时未检测到它。 您可以指导吗?

在我们的定制板上、我们配置了 USB1 (主机、它可以正常工作)和 USB0 (外设、但它无法正常工作!)。

USB0_PINS_DEFAULT:main-usb0-pins-default{
PINCTL-SINGLE、PINS =<
AM62X_IOPAD (0x0254、PIN_OUTPUT、0)/*(C20) USB0_DRVVBUS */
>;
};

MAIN_USB1_PINS_DEFAULT:MAIN-USB1-PINS-DEFAULT{
PINCTL-SINGLE、PINS =<
AM62X_IOPAD (0x0258、PIN_OUTPUT、0)/*(F18/E16) USB1_DRVVBUS */
>;
};

usbss0 (&U)
状态="正常";
TI、VBUS 分频器;
};

&usb0{
dr_mode ="外设";
pinctrl-names ="默认值";
pinctrl-0 =<&MAIN_USb0_PINS_DEFAULT>;
};

&usbss1{
状态="正常";
TI、VBUS 分频器;
};

&USB1{
DR_MODE ="主机";
pinctrl-names ="默认值";
pinctrl-0 =<&MAIN_USB1_PINS_DEFAULT>;
};

MAIN_

内核日志:

e2e.ti.com/.../kernel_5F00_log_5F00_usb0_5F00_not_5F00_detected.txt

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

    主题所有者是 ooo 本周. 敬请期待下周的答复。

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

    Paul、你好!

    内核.config 中以下命令的输出是什么?

    $ grep config_USB_DWC3 .config

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

    您好 Bin Liue

     在我的解配置文件中它是 CONFIG_USB_DWC3=m、我尝试将它更改为 CONFIG_USB_DWC3=y、编译并打开下面的 sa。 但结果是相同的;我的 Windows 主机 PC 无法检测到 USB 端口。  

    e2e.ti.com/.../kernel_5F00_log_5F00_20250319.txt

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

    Paul、你好!

    我认为配置选项 CONFIG_USB_DWC3和 CONFIG_USB_DWC3_AM62应该采用相同的设置。 现在、由于您将两者更新为"=y"、因此新内核引导日志会显示 USB0处于器件模式。

    现在需要为 USB 主机 PC 加载 USB 小工具驱动程序以便进行枚举。 请在 AM62电路板上尝试以下命令:

    # modprobe g_serial

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

    您好、Bin Liu

    发出此命令后、将检测到 USB 端口。 谢谢、端口能够正常工作(Rx/TX)。

    如何在我们的 Yocto SDK 中将其配置为自动检测模式? 如果我们设置为"=y"、我们预计它会在上电时加载。  

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

    Paul、你好!

    您设置的带"=y"的配置适用于 USB 控制器驱动程序、但不适用于 USB 小工具函数驱动程序。

    要在 Linux 引导期间自动加载 USB 小工具功能驱动程序、有2个选项:

    1.如果内核提供了您需要的 Lagacy 小工具驱动程序,例如我前面提到的 g_serial ,您可以将相应的选项设置为'=y',例如 config_usb_g_serial=y。

    2.如果内核没有为您的项目提供旧的小工具驱动程序,您必须使用 USB 小工具 configfs(通常使用 bash 脚本)创建 USB 小工具,然后在 Linux 引导期间在 systemd 中自动运行此 bash 脚本。

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

    您好、Bin Liu

    问题已明确且已解决。 谢谢你。