devnp-usbdnet.so

Updated: October 28, 2024

Class Driver for USBDNET (USB Device Network Driver)

Syntax:

io-pkt-variant -d usbdnet [option[,option ...]] ... 

where variant is v4-hc or v6-hc.

Runs on:

QNX Neutrino

Options:

Note: Use commas, not spaces, to separate the options.
iface_num=number
An interface delimiter that marks the start of a new set of interface parameters when you're configuring multiple interfaces.
mac=XXXXXXXXXXXX
The MAC address on the QNX Neutrino side; a 12-character hexadecimal string (e.g., 0123456789cd).
mtu=num
The maximum transmission unit (default 1500).
nodescmod
Don't modify the USB descriptors; let a USB manager do that.
npkt=number
The maximum number of Ethernet frames to bundle (for RNDIS and NCM only).
path=name
Connect to the specified USB stack. The default is /dev/usb/io-usb-otg.
protocol=str
The protocol to use; one of the following:
  • ecm — Ethernet Control Model
  • rndis — Remote Network Driver Interface Specification
  • ncm — Network Control Model

The default is ecm. The interface name matches the protocol selected.

receive=num
The number of receive URBs to use; the default is 32.
transmit=num
The number of transmit URBs to use; the default is 32.
usbdnet_mac=XXXXXXXXXXXX
The MAC address on the host side; a 12-character hexadecimal string (e.g., 0123456789ab).
verbose or verbose=num
Be verbose. Specify num for more verbosity (num can be 1-4; the higher the number, the more detailed the output). The output goes to slogger2; invoke slog2info to view it.
wait=num
Wait num seconds for the USB stack (default 60 seconds).

Description:

The devnp-usbdnet.so driver is the class driver for USBDNET (USB Device Network Driver). Its interface names are in the form ecmX, ncmX, or rndisX, depending on the protocol, where X is an integer.

Note:
  • You can set the MTU only on the command line (e.g., mtu=8100), and not using ifconfig. This is because some protocols (such as ECM) require that you advertise the MTU in the device descriptor. Changing the MTU using ifconfig would require the driver to force the host to reenumerate the device.
  • You can destroy the interface only when the USB cable is disconnected; otherwise the ifconfig if ifaceX destroy command will fail.
Note: The network drivers don't put entries into the /dev namespace, so a waitfor command for such an entry won't work properly in buildfiles or scripts. Use if_up -p instead; for example, if_up -p ecm0.

Examples:

Start io-pkt using the devnp-usbdnet.so driver and the default ECM protocol:

io-pkt-v4-hc -d usbdnet -ptcpip 
ifconfig ecm0 192.168.1.1
  翻译: