FreeBSD manual
download PDF document: udbp.4.pdf
UDBP(4) FreeBSD Kernel Interfaces Manual UDBP(4)
NAME
udbp - USB Double Bulk Pipe driver
SYNOPSIS
To compile this driver into the kernel, place the following line in your
kernel configuration file:
device udbp
Alternatively, to load the driver as a module at boot time, place the
following line in loader.conf(5):
udbp_load="YES"
DESCRIPTION
The udbp driver provides support for host-to-host cables that contain at
least two bulk pipes (one for each direction). This typically includes
cables branded for use with Windows USB Easy Transfer, and many cables
based on the Prolific PL2xx1 series of USB bridge chips. A useful (but
non-comprehensive) list of compatible USB host cables is listed in the
SEE ALSO section below.
It requires netgraph(4) to be available. This can be done either by
adding options NETGRAPH to your kernel configuration file, or
alternatively loading netgraph(4) as a module, either from
/boot/loader.conf or from the command line, before the udbp module.
EXAMPLES
options NETGRAPH
device udbp
Add the udbp driver to the kernel.
kldload netgraph
kldload udbp
Load the netgraph(4) module and then the udbp driver.
ngctl mkpeer udbp0: eiface data ether
ifconfig ngeth0 ether aa:dd:xx:xx:xx
ifconfig ngeth0 inet 169.254.x.x/16
Create a new Ethernet network interface node and connect its ether hook
to the data hook of the udbp driver.
This enables FreeBSD to communicate with a Linux peer (e.g. using the
plusb driver). The Linux node should be configured to prefer link-local
IPv4 addresses (e.g. using Network Manager in Debian and Red Hat derived
distributions).
Whilst both FreeBSD and Linux are able to interoperate by loosely
following CDC EEM 1.0 in their behaviour, neither implementation has been
expressly designed to follow its specification.
SEE ALSO
netgraph(4), ng_eiface(4), ohci(4), uhci(4), usb(4), ngctl(8)
CAVEATS
The point-to-point nature and additional latency of USB host-host links
makes them unsuitable as a "drop-in" replacement for an Ethernet LAN; for
a USB 3.0 SuperSpeed cable, latency is comparable to 100BaseTX Ethernet
(but often worse), with throughput comparable to 2.5GBASE-T.
However, their energy efficiency makes them attractive for embedded
applications. A Plugable PL27A1 cable claims 24mA of USB3 bus power, as
compared to 150mA for a typical USB 3.0 to Gigabit Ethernet interface.
HISTORY
The udbp driver first appeared in FreeBSD 5.0.
BUGS
The udbp driver does not support the special packets described in section
5.1 of the CDC EEM specification.
AUTHORS
The udbp driver was written by Doug Ambrisko <ambrisko@whistle.com>,
Julian Elischer <julian@FreeBSD.org> and Nick Hibma
<n_hibma@FreeBSD.org>.
This manual page was written by Nick Hibma <n_hibma@FreeBSD.org> and
updated by Bruce Simpson <bms@FreeBSD.org>.
FreeBSD 14.0-RELEASE-p11 October 20, 2017 FreeBSD 14.0-RELEASE-p11