ORIN nano的USB3.0接口

orin nano 有3路USB2.0接口和3路USB3.2接口,我们的外部设备需要一路usb2.0和一路usb3.2接口搭配使用,目前需要使用3路usb2.0和usb3.2,想问下是否需要按照特定的要求两两搭配使用,还是可以任意组合呢

  • USB 2.0 通道(如 USB0)可以单独使用。

  • USB 3.2 通道(如 USBSS0/USBSS1/USBSS2)必须与某一路 USB 2.0 通道配对。

    • 例如,USBSS0 + USB1 配对,USBSS2 + USB2 配对。*
  • 不能随意将任意 USB 3.2 通道与任意 USB 2.0 通道组合,必须按照硬件设计的映射关系进行配对。

开发版常见配置:

USB 2.0 通道 USB 3.2 通道 说明
USB1 USBSS0 一组Type-A接口
USB2 USBSS2 一组Type-A接口
USB0 - 可独立用作Recovery

如需自定义载板,请在设备树中正确配置 USB 通道的映射关系

自定义开发版配置参考文档

谢谢你
我看你的这个配置里面USB0只用作Recovery模式, 我还想问下USB0是否可以和USBSS1 搭配使用呢?

可以搭配使用。参考这篇文章里的配置

这样配置后,

usb2-0 mode = otg; status = okay 启用OTG模式(可作Host或Device),通常用于Type-C接口或Recovery功能
usb2-1 mode = host; status = okay 启用标准Host模式,连接外部设备(如USB摄像头、存储设备)
usb2-2 mode = host; status = okay 同上,另一路Host模式接口

注意

  • usb2-0设为OTG模式时,需确保硬件设计支持ID引脚检测,否则可能导致模式切换失败。

针对orin nano的USB2-0的ID引脚有特定的管脚么?

Orin Nano本身没有专用ID引脚,要通过 GPIO 模拟。

  • 在自定义载板上,选择一个未使用的GPIO(如 GPIO_06GPIO3)作为ID引脚。
  • 将该GPIO连接到USB Micro-B或Type-C接口的ID引脚(对于Type-C,需通过CC逻辑芯片管理)。

参考如下配置,

{
    xusb_padctl@3520000 {
        ports {
            usb2-0 {
                mode = "otg";
                nvidia,id-gpio = <&gpio TEGRA234_MAIN_GPIO(G, 6) 0>;  // 使用GPIO_06(GPIO G6)
                status = "okay";
            };
        };
    };
};

验证USB模式

dmesg | grep xhci
lsusb

插入USB设备(手机或者U盘),观察是否能切换Host/Device模式

测量ID引脚电压:Host模式下应为高电平(3.3V),Device模式下为低电平(0V)。