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.

[参考译文] Linux/processor-SDK-AM335X:USB 连接到 Linux 主机时出现问题。

Guru**** 2587365 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/590890/linux-processor-sdk-am335x-trouble-with-usb-connection-to-linux-host

器件型号:PROCESSOR-SDK-AM335X

工具/软件:Linux

您好!

我正在开发基于 BeagleBone Black 和 ti-processor-sdk-linux-am335x-evm-01.00.00.03的器件。 并在使 USB 正常工作时遇到问题。

我正在使用附加的脚本、它在 Windows 主机上工作正常。 但是、在 Linux 中存在问题。 主机会检测到我的设备,但不会分配 IP 号码。

用户@Ubuntu:~$ ifconfig
~~~
usb0 链接地址:以太网 HWaddr 12:00:00:00:00:00
上广播多播 MTU:1500公制:1
RX 数据包:0错误:0丢弃:0超限:0帧:0
TX 数据包:1错误:0丢弃:0超限:0载波:0
冲突:0 txqueuelen:1000
RX 字节:0 (0.0 B) TX 字节:90 (90.0 B)

网络设置对话框显示设备、但显示电缆未插入。

有人能帮我弄清楚发生了什么事吗?

谢谢你

Brian

e2e.ti.com/.../1665.usb_5F00_ether.txt

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

    您是否已验证主板和主机 PC 均使用拼接 IP 设置或 DHCP?

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

    我的设备使用192.168.7.2作为其静态 IP,并将 DHCPD 配置为向主机提供192.168.7.1。 这在 Windows 下工作。

    当我在 Linux 主机上强制将 IP 设置为192.168.7.1时,它仍然不起作用。

    用户@Ubuntu:~$ sudo ifconfig eth0 192.168.0.1 netmask 255.255.255.0
    用于用户的[sude]密码:
    用户@Ubuntu:~$ ifconfig
    eth0 链接地址:以太网 HWaddr 00:0c:29:27:43:e8
    iNet addr:192.168.0.1 Bcast:192.168.0.255掩码:255.255.255.0
    inet6 addr:fe80:20c:29ff:fe27:43e8/64范围:链接
    运行多播 MTU:1500公制:1的上广播
    RX 数据包:1250963错误:1丢弃:8760溢出:0帧:0
    TX 数据包:346125错误:0丢弃:0超限:0载波:0
    冲突:0 txqueuelen:1000
    RX 字节:180779172 (180.7MB) TX 字节:257333787 (257.3MB)
    中断:19基地址:0x2000
    
    lo 链路环状图:本地环回
    iNet addr:127.0.0.1掩码:255.0.0.0
    inet6 addr:::1/128范围:Host
    正在运行 MTU:65536公制:1的上环回
    RX 数据包:881错误:0丢弃:0超限:0帧:0
    TX 数据包:881错误:0丢弃:0超限:0载波:0
    冲突:0 txqueuelen:0
    RX 字节:245829 (245.8KB) TX 字节:245829 (245.8KB)
    
    usb0 链接地址:以太网 HWaddr 12:00:00:00:00:00
    iNet addr:192.168.7.1 Bcast:192.168.7.255 Mask:255.255.255.0
    上广播多播 MTU:1500公制:1
    RX 数据包:0错误:0丢弃:0超限:0帧:0
    TX 数据包:0错误:0丢弃:0超限:0载波:0
    冲突:0 txqueuelen:1000
    RX 字节:0 (0.0 B) TX 字节:0 (0.0 B)
    
    用户@Ubuntu:~$ ping 192.168.7.2
    ping 192.168.7.2 (192.168.7.2) 56 (84)字节数据。
    从192.168.7.1 ICMP 序列=1目标主机
    无法从192.168.7.1 ICMP 序列=2目标主机
    无法从192.168.7.1 ICMP 序列=3目标主机
    无法从192.168.7.1 ICMP 序列=4目标主机
    无法从192.168.7.1 ICMP 序列=5目标主机无法从
    192.168.7.1 ICMP 序列=6目标主机无法访问 ICMP 序列
    ^C
    -- 192.168.7.2 ping 统计数据--
    

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

    您如何通过 LAN 连接主机和设备? 或者它们是否直接通过以太网(一端到设备,另一端到主机)连接?

    设备中的 ifconfig 是什么?
    如果设置 dhcpd (这意味着 DHCP 服务器,它将 IP 提供给他人,那么为什么是静态配置),设置中的 IP 范围是什么?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    "您如何通过 LAN 连接主机和设备? 或者它们是否直接通过以太网(一端到设备,另一端到主机)连接?"
    该器件处于 LAN 上、主机和器件均连接到同一以太网集线器。

    "设备中的 ifconfig 是什么?"
    根目录@AM335x-EVM:~# ifconfig
    eth0 链接地址:以太网 HWaddr B0:D5:CC:C4:93:91
    iNet addr:192.168.1.146 Bcast:192.168.1.255 Mask:255.255.255.0
    运行多播 MTU:1500公制:1的上广播
    RX 数据包:77538错误:0丢弃:15超支:0帧:0
    TX 数据包:13474错误:0丢弃:0超限:0载波:0
    冲突:0 txqueuelen:1000
    RX 字节:19059371 (18.1 MIB) TX 字节:1635204 (1.5 MIB)
    中断:56

    低 链路环状图:本地环回
    iNet addr:127.0.0.1掩码:255.0.0.0
    正在运行 MTU:65536公制:1的上环回
    RX 数据包:2671错误:0丢弃:0超限:0帧:0
    TX 数据包:2671错误:0丢弃:0溢出:0载波:0
    冲突:0 txqueuelen:0
    RX 字节:415816 (406.0 KiB) TX 字节:415816 (406.0 KiB)

    USB0 链接地址:以太网 HWaddr 22:00:00:00:00:00
    iNet addr:192.168.7.2 Bcast:192.168.7.255 Mask:255.255.255.0
    上广播多播 MTU:1500公制:1
    RX 数据包:1050错误:0丢弃:451溢出:0帧:0
    TX 数据包:5错误:0丢弃:0超限:0载波:0
    冲突:0 txqueuelen:1000
    RX 字节:250561 (244.6 KiB) TX 字节:1648 (1.6 KiB)

    "如果设置 dhcpd (这意味着 DHCP 服务器,它将 IP 提供给他人,那么为什么是静态配置),则设置中的 IP 范围是多少?"
    我是作为故障排除步骤执行的。

    来自/etc/udhcpd.conf
    # IP 租用块的开始和结束
    启动 192.168.7.1
    结束 192.168.7.3

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

    我错过了使用 USB 乙醚的机会。 您是否尝试过:

    1.在 cecdev.txt 脚本中创建 CDC_only?
    2.如果在设备端使用 udhcpd,是否可以确保主机中的 udhcpc 正在使用 usb0接口?
    3.您还可以尝试关闭 ifconfig eth0并同时检查设备和主机。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    强制在脚本中使 CDC_only 使其生效。 这意味着什么? 这是否意味着我无法同时支持 Linux 和 Windows?

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

    结果表明、仅使用 RNDIS、不使用 CDC、在 Windows 主机和 Linux 主机上可以正常工作。 啊!!!

    感谢大家的帮助。

    Brian