xref: /freebsd/share/man/man4/ng_ubt.4 (revision f393f49865c441582d43a1d191a75871dbd29358)
1878ed226SJulian Elischer.\" Copyright (c) 2001-2002 Maksim Yevmenkin <m_evmenkin@yahoo.com>
2878ed226SJulian Elischer.\" All rights reserved.
3878ed226SJulian Elischer.\"
4878ed226SJulian Elischer.\" Redistribution and use in source and binary forms, with or without
5878ed226SJulian Elischer.\" modification, are permitted provided that the following conditions
6878ed226SJulian Elischer.\" are met:
7878ed226SJulian Elischer.\" 1. Redistributions of source code must retain the above copyright
8878ed226SJulian Elischer.\"    notice, this list of conditions and the following disclaimer.
9878ed226SJulian Elischer.\" 2. Redistributions in binary form must reproduce the above copyright
10878ed226SJulian Elischer.\"    notice, this list of conditions and the following disclaimer in the
11878ed226SJulian Elischer.\"    documentation and/or other materials provided with the distribution.
12878ed226SJulian Elischer.\"
13878ed226SJulian Elischer.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14878ed226SJulian Elischer.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15878ed226SJulian Elischer.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16878ed226SJulian Elischer.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17878ed226SJulian Elischer.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18878ed226SJulian Elischer.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19878ed226SJulian Elischer.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20878ed226SJulian Elischer.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21878ed226SJulian Elischer.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22878ed226SJulian Elischer.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23878ed226SJulian Elischer.\" SUCH DAMAGE.
24878ed226SJulian Elischer.\"
25878ed226SJulian Elischer.\" $FreeBSD$
26f393f498SRuslan Ermilov.\"
27878ed226SJulian Elischer.Dd June 14, 2002
28878ed226SJulian Elischer.Dt NG_UBT 4
29878ed226SJulian Elischer.Os
30878ed226SJulian Elischer.Sh NAME
31f393f498SRuslan Ermilov.Nm ng_ubt
32878ed226SJulian Elischer.Nd Netgraph node type that is also a driver for Bluetooth USB devices
33878ed226SJulian Elischer.Sh SYNOPSIS
34878ed226SJulian Elischer.In sys/types.h
35878ed226SJulian Elischer.In ng_ubt.h
36878ed226SJulian Elischer.Sh DESCRIPTION
37878ed226SJulian ElischerThe
38f393f498SRuslan Ermilov.Nm ubt
39878ed226SJulian Elischernode type is both a persistent Netgraph node type and a driver for
40f393f498SRuslan ErmilovBluetooth USB devices.
41f393f498SRuslan ErmilovIt implements a Bluetooth USB transport layer
42f393f498SRuslan Ermilovas per chapter H2 of the Bluetooth Specification Book v1.1.
43f393f498SRuslan ErmilovA new node is created when supported USB device is plugged.
44878ed226SJulian Elischer.Pp
45878ed226SJulian ElischerThe node has a single hook called
46878ed226SJulian Elischer.Dv hook .
47878ed226SJulian ElischerIncoming bytes received on the device are re-assembled into HCI frames
48f393f498SRuslan Ermilov(according to the length).
49f393f498SRuslan ErmilovFull HCI frames are sent out on the hook.
50f393f498SRuslan ErmilovThe node will add HCI frame indicator if device did not send it.
51f393f498SRuslan ErmilovHCI frames received on
52878ed226SJulian Elischer.Dv hook
53f393f498SRuslan Ermilovare transmitted out.
54f393f498SRuslan ErmilovThe node will drop HCI frame indicator unless device
55878ed226SJulian Elischerrequires it to be present.
56878ed226SJulian Elischer.Sh HOOKS
57878ed226SJulian ElischerThis node type supports the following hooks:
58f393f498SRuslan Ermilov.Bl -tag -width indent
59878ed226SJulian Elischer.It Dv hook
60878ed226SJulian Elischersingle HCI frame contained in single
61f393f498SRuslan Ermilov.Vt mbuf
62878ed226SJulian Elischerstructure.
63878ed226SJulian Elischer.El
64878ed226SJulian Elischer.Sh CONTROL MESSAGES
65878ed226SJulian ElischerThis node type supports the generic control messages, plus the following:
66f393f498SRuslan Ermilov.Bl -tag -width indent
67878ed226SJulian Elischer.It Dv NGM_UBT_NODE_GET_DEBUG
68878ed226SJulian ElischerReturns an integer containing the current debug level for the node.
69878ed226SJulian Elischer.It Dv NGM_UBT_NODE_SET_DEBUG
70878ed226SJulian ElischerThis command takes an integer argument and sets current debug level
71878ed226SJulian Elischerfor the node.
72878ed226SJulian Elischer.It Dv NGM_UBT_NODE_GET_QLEN
73878ed226SJulian ElischerThis command takes a parameter that specifies queue number and returns
74878ed226SJulian Elischercurrent maximal length of the queue for the node.
75878ed226SJulian Elischer.It Dv NGM_UBT_NODE_SET_QLEN
76878ed226SJulian ElischerThis command takes two parameters that specify queue number and maximum
77878ed226SJulian Elischerlength of the queue and sets maximal length of the queue for the node.
78878ed226SJulian Elischer.It Dv NGM_UBT_NODE_GET_STAT
79878ed226SJulian ElischerReturns various statistic information for the node, such as: number of
80878ed226SJulian Elischerbytes (frames) sent, number of bytes (frames) received and number of
81878ed226SJulian Elischerinput (output) errors.
82878ed226SJulian Elischer.It Dv NGM_UBT_NODE_RESET_STAT
83878ed226SJulian ElischerReset all statistic counters to zero.
84878ed226SJulian Elischer.El
85878ed226SJulian Elischer.Sh SHUTDOWN
86878ed226SJulian ElischerThis node shuts down when the corresponding USB device is un-plugged.
87878ed226SJulian Elischer.Sh BUGS
88f393f498SRuslan ErmilovIsochronous USB transfers are probably broken.
89f393f498SRuslan ErmilovIt means that USB device probably will not be able to transfer SCO data (voice).
90f393f498SRuslan ErmilovDriver does not support firmware upgrade procedure.
91f393f498SRuslan ErmilovUSB interrupt transfers are implemented as bulk-in transfers (not really a bug).
92878ed226SJulian Elischer.Sh SEE ALSO
93878ed226SJulian Elischer.Xr netgraph 4 ,
94f393f498SRuslan Ermilov.Xr usb 4 ,
95878ed226SJulian Elischer.Xr ngctl 8
96878ed226SJulian Elischer.Sh HISTORY
97878ed226SJulian ElischerThe
98f393f498SRuslan Ermilov.Nm ubt
99878ed226SJulian Elischernode type was implemented in
100878ed226SJulian Elischer.Fx 5.0 .
101878ed226SJulian Elischer.Sh AUTHORS
102878ed226SJulian Elischer.An Maksim Yevmenkin Aq m_evmenkin@yahoo.com
103