《开发板 —— Linux配置USB RNDIS》

  一台Linux即可充当USB的device端,也可以由另一台Linux来充当USB的Host端。在与以太网不同,在USB网络里各终端不是对等的,即USB Host端和USB Device端的所需要软件和硬件接口不一样。

Linux充当USB Host

  Linux开发板当USB Host时,需要安装安装 rndis_host.ko 这个驱动。

│ Prompt: Host for RNDIS and ActiveSync devices (EXPERIMENTAL) │

│ Defined at drivers/net/usb/Kconfig:234 │

│ Depends on: NETDEVICES && USB && NET && USB_USBNET && EXPERIMENTAL │

│ Location: │

│ -> Device Drivers │

│ -> Network device support (NETDEVICES [=y]) │

│ -> USB Network Adapters │

│ -> Multi-purpose USB Networking Framework (USB_USBNET [=m]) │

  

Linux充当USB Device

  Linux开发板需要安装USB Gadget驱动g_ether.ko 来进行通讯。

Symbol: USB_ETH_RNDIS [=n] │

│ Prompt: RNDIS support │

│ Defined at drivers/usb/gadget/Kconfig:609 │

│ Depends on: && USB_ETH │

│ Location: │

│ -> Device Drivers │

│ -> USB support (USB_SUPPORT [=y]) │

│ -> USB Gadget Support (USB_GADGET [=y]) │

│ -> USB Gadget Drivers ( [=m]) │

│ -> Ethernet Gadget (with CDC Ethernet support) (USB_ETH [=n │

  

   最终配置选项就是:CONFIG_USB_ETH=y和CONFIG_USB_ETH_RNDIS=y。

原文地址:https://www.cnblogs.com/zhuangquan/p/15428253.html