/share/man/man4/ng_ubt.4

https://bitbucket.org/freebsd/freebsd-head/ · Forth · 123 lines · 123 code · 0 blank · 0 comment · 7 complexity · 3f460e2062cfc2bb0e2176344e963b25 MD5 · raw file

  1. .\" Copyright (c) 2001-2002 Maksim Yevmenkin <m_evmenkin@yahoo.com>
  2. .\" All rights reserved.
  3. .\"
  4. .\" Redistribution and use in source and binary forms, with or without
  5. .\" modification, are permitted provided that the following conditions
  6. .\" are met:
  7. .\" 1. Redistributions of source code must retain the above copyright
  8. .\" notice, this list of conditions and the following disclaimer.
  9. .\" 2. Redistributions in binary form must reproduce the above copyright
  10. .\" notice, this list of conditions and the following disclaimer in the
  11. .\" documentation and/or other materials provided with the distribution.
  12. .\"
  13. .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
  14. .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  15. .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  16. .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
  17. .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  18. .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  19. .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  20. .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  21. .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  22. .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  23. .\" SUCH DAMAGE.
  24. .\"
  25. .\" $Id: ng_ubt.4,v 1.3 2003/05/21 19:37:35 max Exp $
  26. .\" $FreeBSD$
  27. .\"
  28. .Dd September 13, 2004
  29. .Dt NG_UBT 4
  30. .Os
  31. .Sh NAME
  32. .Nm ng_ubt
  33. .Nd Netgraph node type that is also a driver for Bluetooth USB devices
  34. .Sh SYNOPSIS
  35. .In sys/types.h
  36. .In netgraph/bluetooth/include/ng_ubt.h
  37. .Sh DESCRIPTION
  38. The
  39. .Nm ubt
  40. node type is both a persistent Netgraph node type and a driver for
  41. Bluetooth USB devices.
  42. It implements a Bluetooth USB transport layer
  43. as per chapter H2 of the Bluetooth Specification Book v1.1.
  44. A new node is created when a supported USB device is plugged in.
  45. .Pp
  46. The node has a single hook called
  47. .Dv hook .
  48. Incoming bytes received on the device are re-assembled into HCI frames
  49. (according to the length).
  50. Full HCI frames are sent out on the hook.
  51. The node will add a HCI frame indicator if the device did not send it.
  52. HCI frames received on
  53. .Dv hook
  54. are transmitted out.
  55. The node will drop the HCI frame indicator unless the device
  56. requires it to be present.
  57. .Sh HARDWARE
  58. The
  59. .Nm
  60. driver supports all Bluetooth USB devices that conform with
  61. the Bluetooth specification v1.1, including:
  62. .Pp
  63. .Bl -bullet -compact
  64. .It
  65. 3Com 3CREB96
  66. .It
  67. AIPTEK BR0R02
  68. .It
  69. EPoX BT-DG02
  70. .It
  71. Mitsumi Bluetooth USB adapter
  72. .It
  73. MSI MS-6967
  74. .It
  75. TDK Bluetooth USB adapter
  76. .El
  77. .Sh HOOKS
  78. This node type supports the following hooks:
  79. .Bl -tag -width indent
  80. .It Dv hook
  81. single HCI frame contained in a single
  82. .Vt mbuf
  83. structure.
  84. .El
  85. .Sh CONTROL MESSAGES
  86. This node type supports the generic control messages, plus the following:
  87. .Bl -tag -width indent
  88. .It Dv NGM_UBT_NODE_GET_DEBUG
  89. Returns an integer containing the current debug level for the node.
  90. .It Dv NGM_UBT_NODE_SET_DEBUG
  91. This command takes an integer argument and sets the current debug level
  92. for the node.
  93. .It Dv NGM_UBT_NODE_GET_QLEN
  94. This command takes a parameter that specifies the queue number and returns
  95. the current maximal length of the queue for the node.
  96. .It Dv NGM_UBT_NODE_SET_QLEN
  97. This command takes two parameters that specify the queue number and the maximum
  98. length of the queue and sets the maximal length of the queue for the node.
  99. .It Dv NGM_UBT_NODE_GET_STAT
  100. Returns various statistic information for the node, such as: number of
  101. bytes (frames) sent, number of bytes (frames) received and number of
  102. input (output) errors.
  103. .It Dv NGM_UBT_NODE_RESET_STAT
  104. Reset all statistic counters to zero.
  105. .El
  106. .Sh SHUTDOWN
  107. This node shuts down when the corresponding USB device is un-plugged.
  108. .Sh SEE ALSO
  109. .Xr netgraph 4 ,
  110. .Xr ugen 4 ,
  111. .Xr usb 4 ,
  112. .Xr ngctl 8
  113. .Sh HISTORY
  114. The
  115. .Nm ubt
  116. node type was implemented in
  117. .Fx 5.0 .
  118. .Sh AUTHORS
  119. .An Maksim Yevmenkin Aq m_evmenkin@yahoo.com
  120. .Sh BUGS
  121. Isochronous USB transfers are broken.
  122. This means that the USB device will not be able to transfer SCO data (voice).
  123. USB interrupt transfers are implemented as bulk-in transfers (not really a bug).