【问题标题】:Linux USB Gadget custom configurationLinux USB 小工具自定义配置
【发布时间】:2016-05-31 06:35:42
【问题描述】:

我正在使用运行 Linux Kernel 3.14.18 的 i.Mx6 Saber Lite 板,并且板应该充当 USB 设备(USB 小工具)。需要将一个供应商特定接口添加到 CDC/NCM 配置中。 CDC/NCM 配置默认有两个标准接口——通信和数据。我在 CDC/NCM 配置中添加了第三个接口(特定于供应商)。该接口有两个 Bulk (IN & OUT) Endpoints。一旦开发板使用“lsusb”连接到 PC,我就可以验证这个新添加的接口。

问题:

  1. 我看不到新添加的接口暴露在 i.Mx Board 或 PC 上的用户空间,就像在 i.Mx Board 和 PC 上可以将标准 NCM 接口视为 usb0(以太网设备)我可以使用 usb0 PING 到/从板子上。

  2. 如果我必须将这个新添加的接口与一些 g_“驱动程序”连接起来(就像标准 NCM 接口连接到 g_ether);那么 BULK I/O 的最佳选择是什么?

  3. 如何使这个新添加的供应商特定接口可用于 i.MX6 用户空间,以便从 Linux 应用程序对其进行读/写?我开始了解 GadgetFS;但任何例子都是

希望有人在Linux-USB中尝试过类似的事情并可以指导。

【问题讨论】:

    标签: linux-kernel usb embedded-linux usb-descriptor


    【解决方案1】:

    特定于供应商的接口不使用标准协议,因此无法使用标准驱动程序之一。 (而且bulk不是协议,是实现自己协议的机制。)

    要访问这样的接口,您必须使用 libusb 之类的低级函数。

    【讨论】:

      猜你喜欢
      • 2014-02-15
      • 1970-01-01
      • 1970-01-01
      • 2011-06-05
      • 1970-01-01
      • 2014-05-17
      • 1970-01-01
      • 2017-06-19
      • 1970-01-01
      相关资源
      最近更新 更多