summaryrefslogtreecommitdiff
path: root/static/freebsd/man4/usb.4 4.html
diff options
context:
space:
mode:
Diffstat (limited to 'static/freebsd/man4/usb.4 4.html')
-rw-r--r--static/freebsd/man4/usb.4 4.html154
1 files changed, 0 insertions, 154 deletions
diff --git a/static/freebsd/man4/usb.4 4.html b/static/freebsd/man4/usb.4 4.html
deleted file mode 100644
index 01eebc48..00000000
--- a/static/freebsd/man4/usb.4 4.html
+++ /dev/null
@@ -1,154 +0,0 @@
-<table class="head">
- <tr>
- <td class="head-ltitle">USB(4)</td>
- <td class="head-vol">Device Drivers Manual</td>
- <td class="head-rtitle">USB(4)</td>
- </tr>
-</table>
-<div class="manual-text">
-<section class="Sh">
-<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
-<p class="Pp"><code class="Nm">usb</code> &#x2014; <span class="Nd">Universal
- Serial Bus</span></p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
-<p class="Pp">To compile this driver into the kernel, place the following line
- in your kernel configuration file:</p>
-<div class="Bd Pp Bd-indent"><code class="Cd">device usb</code></div>
-<p class="Pp">Alternatively, to load the driver as a module at boot time, place
- the following line in <a class="Xr">loader.conf(5)</a>:</p>
-<div class="Bd Pp Bd-indent Li">
-<pre>usb_load=&quot;YES&quot;</pre>
-</div>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="USERLAND_PROGRAMMING"><a class="permalink" href="#USERLAND_PROGRAMMING">USERLAND
- PROGRAMMING</a></h1>
-<p class="Pp">USB functions can be accessed from userland through the libusb
- library. See <a class="Xr">libusb(3)</a> for more information.</p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
-<p class="Pp"><span class="Ux">FreeBSD</span> provides machine-independent bus
- support and drivers for USB devices in host and device side mode.</p>
-<p class="Pp">The <code class="Nm">usb</code> driver has three layers:</p>
-<div class="Bd-indent">
-<dl class="Bl-tag">
- <dt>USB Controller (Bus)</dt>
- <dd style="width: auto;">&#x00A0;</dd>
- <dt>USB Device</dt>
- <dd style="width: auto;">&#x00A0;</dd>
- <dt>USB Driver</dt>
- <dd style="width: auto;">&#x00A0;</dd>
-</dl>
-</div>
-<p class="Pp">The controller attaches to a physical bus like
- <a class="Xr">pci(4)</a>. The USB bus attaches to the controller, and the
- root hub attaches to the controller. Any devices attached to the bus will
- attach to the root hub or another hub attached to the USB bus.</p>
-<p class="Pp">The <code class="Nm">uhub</code> device will always be present as
- it is needed for the root hub.</p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="INTRODUCTION_TO_USB"><a class="permalink" href="#INTRODUCTION_TO_USB">INTRODUCTION
- TO USB</a></h1>
-<p class="Pp">The USB is a system where external devices can be connected to a
- PC. The most common USB speeds are:</p>
-<div class="Bd-indent">
-<dl class="Bl-tag">
- <dt>Low Speed (1.5 MBit/sec)</dt>
- <dd style="width: auto;">&#x00A0;</dd>
- <dt>Full Speed (12 MBit/sec)</dt>
- <dd style="width: auto;">&#x00A0;</dd>
- <dt>High Speed (480 MBit/sec)</dt>
- <dd style="width: auto;">&#x00A0;</dd>
- <dt>SuperSpeed (5 GBit/sec)</dt>
- <dd style="width: auto;">&#x00A0;</dd>
-</dl>
-</div>
-<p class="Pp">Each USB has a USB controller that is the master of the bus. The
- physical communication is simplex which means the host controller only
- communicates with one USB device at a time.</p>
-<p class="Pp">There can be up to 127 devices connected to an USB HUB tree. The
- addresses are assigned dynamically by the host when each device is attached
- to the bus.</p>
-<p class="Pp" id="control">Within each device there can be up to 16 endpoints.
- Each endpoint is individually addressed and the addresses are static. Each
- of these endpoints will communicate in one of four different modes:
- <a class="permalink" href="#control"><i class="Em">control</i></a>,
- <a class="permalink" href="#isochronous"><i class="Em" id="isochronous">isochronous</i></a>,
- <a class="permalink" href="#bulk"><i class="Em" id="bulk">bulk</i></a>, or
- <a class="permalink" href="#interrupt"><i class="Em" id="interrupt">interrupt</i></a>.
- A device always has at least one endpoint. This endpoint has address 0 and
- is a control endpoint and is used to give commands to and extract basic
- data, such as descriptors, from the device. Each endpoint, except the
- control endpoint, is unidirectional.</p>
-<p class="Pp">The endpoints in a device are grouped into interfaces. An
- interface is a logical unit within a device, e.g., a compound device with
- both a keyboard and a trackball, would present one interface for each. An
- interface can sometimes be set into different modes, called alternate
- settings, which affects how it operates. Different alternate settings can
- have different endpoints within it.</p>
-<p class="Pp">A device may operate in different configurations. Depending on the
- configuration, the device may present different sets of endpoints and
- interfaces.</p>
-<p class="Pp">The bus enumeration of the USB bus proceeds in several steps:</p>
-<ol class="Bl-enum">
- <li>Any interface specific driver can attach to the device.</li>
- <li>If none is found, generic interface class drivers can attach.</li>
-</ol>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SYSCTL_VARIABLES"><a class="permalink" href="#SYSCTL_VARIABLES">SYSCTL
- VARIABLES</a></h1>
-<p class="Pp">The following variables are available as both
- <a class="Xr">sysctl(8)</a> variables and <a class="Xr">loader(8)</a>
- tunables:</p>
-<dl class="Bl-tag">
- <dt id="hw.usb.debug"><var class="Va">hw.usb.debug</var></dt>
- <dd>Debug output level, where 0 is debugging disabled and larger values
- increase debug message verbosity. Default is 0.</dd>
-</dl>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
- ALSO</a></h1>
-<p class="Pp">The USB specifications can be found at:</p>
-<p class="Pp"></p>
-<div class="Bd
- Bd-indent"><span class="Pa">https://www.usb.org/documents</span></div>
-<p class="Pp"><a class="Xr">libusb(3)</a>, <a class="Xr">aue(4)</a>,
- <a class="Xr">axe(4)</a>, <a class="Xr">axge(4)</a>,
- <a class="Xr">cue(4)</a>, <a class="Xr">ehci(4)</a>,
- <a class="Xr">kue(4)</a>, <a class="Xr">mos(4)</a>,
- <a class="Xr">ohci(4)</a>, <a class="Xr">pci(4)</a>,
- <a class="Xr">rue(4)</a>, <a class="Xr">ucom(4)</a>,
- <a class="Xr">udav(4)</a>, <a class="Xr">uhci(4)</a>,
- <a class="Xr">uhid(4)</a>, <a class="Xr">ukbd(4)</a>,
- <a class="Xr">ulpt(4)</a>, <a class="Xr">umass(4)</a>,
- <a class="Xr">ums(4)</a>, <a class="Xr">uplcom(4)</a>,
- <a class="Xr">urio(4)</a>, <a class="Xr">uvscom(4)</a>,
- <a class="Xr">xhci(4)</a> <a class="Xr">usbconfig(8)</a>,
- <a class="Xr">usbdi(9)</a></p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="STANDARDS"><a class="permalink" href="#STANDARDS">STANDARDS</a></h1>
-<p class="Pp">The <code class="Nm">usb</code> module complies with the USB 3.0
- standard.</p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1>
-<p class="Pp">The <code class="Nm">usb</code> module has been inspired by the
- <span class="Ux">NetBSD</span> USB stack initially written by
- <span class="An">Lennart Augustsson</span>. The <code class="Nm">usb</code>
- module was written by <span class="An">Hans Petter Selasky</span>
- &lt;<a class="Mt" href="mailto:hselasky@FreeBSD.org">hselasky@FreeBSD.org</a>&gt;.</p>
-</section>
-</div>
-<table class="foot">
- <tr>
- <td class="foot-date">September 7, 2020</td>
- <td class="foot-os">FreeBSD 15.0</td>
- </tr>
-</table>