summaryrefslogtreecommitdiff
path: root/static/netbsd/man4/btsco.4 4.html
blob: 9a3070bfd215784be70b53a54a3fe4c4067eb2bd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<table class="head">
  <tr>
    <td class="head-ltitle">BTSCO(4)</td>
    <td class="head-vol">Device Drivers Manual</td>
    <td class="head-rtitle">BTSCO(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">btsco</code> &#x2014; <span class="Nd">Bluetooth
    SCO Audio</span></p>
</section>
<section class="Sh">
<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
<p class="Pp"><code class="Cd">btsco*	at bthub?</code>
  <br/>
  <code class="Cd">audio*	at audiobus?</code></p>
</section>
<section class="Sh">
<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
<p class="Pp">The <code class="Nm">btsco</code> driver provides support for
    Bluetooth SCO (Synchronous connection-oriented) Audio devices through the
    <a class="Xr">audio(4)</a> driver.</p>
<p class="Pp">The <code class="Nm">btsco</code> driver must be configured at run
    time with the <a class="Xr">btdevctl(8)</a> program. The following
    properties are used by the <code class="Nm">btsco</code> driver during
    autoconfiguration:</p>
<dl class="Bl-tag">
  <dt>local-bdaddr</dt>
  <dd>Local device address.</dd>
  <dt>remote-bdaddr</dt>
  <dd>Remote device address.</dd>
  <dt>service-name</dt>
  <dd>The <code class="Nm">btsco</code> driver matches the &#x2018;HF&#x2019;
      and &#x2018;HSET&#x2019; services. For the &#x2018;HF&#x2019; service, the
      <code class="Nm">btsco</code> device will, on <a class="Xr">open(2)</a>,
      listen for incoming connections from the remote device. Otherwise,
      <code class="Nm">btsco</code> will attempt to initiate a connection to the
      remote device.</dd>
  <dt>rfcomm-channel</dt>
  <dd>This integer value is not used directly, but will be stored and passed via
      the <code class="Dv">BTSCO_INFO</code> ioctl as below:</dd>
</dl>
<p class="Pp">SCO connections require a baseband connection between the two
    devices before they can be created. The <code class="Nm">btsco</code> driver
    does not create this, but can provide information to facilitate an
    application setting up a control channel prior to use, via the
    <code class="Dv">BTSCO_INFO</code> <a class="Xr">ioctl(2)</a> call on the
    mixer device, which returns a <var class="Ar">btsco_info</var> structure as
    follows:</p>
<div class="Bd Pp Li">
<pre>#include &lt;dev/bluetooth/btsco.h&gt;

struct btsco_info {
	bdaddr_t	laddr;		/* controller bdaddr */
	bdaddr_t	raddr;		/* headset bdaddr */
	uint8_t		channel;	/* RFCOMM channel */
	int		vgs;		/* mixer index speaker */
	int		vgm;		/* mixer index mic */
};

#define BTSCO_INFO	_IOR('b', 16, struct btsco_info)</pre>
</div>
<p class="Pp">The <code class="Nm">btsco</code> driver can be configured to act
    in Connect or Listen mode. In Connect mode, the
    <code class="Nm">btsco</code> driver will initiate a connection to the
    remote device on an <a class="Xr">open(2)</a> call, whereas in Listen mode,
    <a class="Xr">open(2)</a> will block until the remote device initiates the
    connection.</p>
</section>
<section class="Sh">
<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
  ALSO</a></h1>
<p class="Pp"><a class="Xr">bthset(1)</a>, <a class="Xr">ioctl(2)</a>,
    <a class="Xr">audio(4)</a>, <a class="Xr">bluetooth(4)</a>,
    <a class="Xr">bthub(4)</a>, <a class="Xr">btdevctl(8)</a></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">btsco</code> driver was written for
    <span class="Ux">NetBSD 4.0</span> by <span class="An">Iain Hibbert</span>
    under the sponsorship of Itronix, Inc.</p>
</section>
<section class="Sh">
<h1 class="Sh" id="BUGS"><a class="permalink" href="#BUGS">BUGS</a></h1>
<p class="Pp"><code class="Nm">btsco</code> takes no notice of the HCI Voice
    Setting in the Bluetooth controller, and this must be 0x0060 (the default)
    as alternate values are currently unsupported.</p>
</section>
</div>
<table class="foot">
  <tr>
    <td class="foot-date">November 29, 2014</td>
    <td class="foot-os">NetBSD 10.1</td>
  </tr>
</table>