1 .\" Copyright (c) 2006 Joel Dahl <joel@FreeBSD.org>
2 .\" All rights reserved.
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
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.
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
32 .Nd "Intel High Definition Audio bridge device driver"
34 To compile this driver into the kernel, place the following lines in your
35 kernel configuration file:
36 .Bd -ragged -offset indent
41 Alternatively, to load the driver as a module at boot time, place the
44 .Bd -literal -offset indent
50 bridge device driver allows the generic audio driver,
52 to attach to Intel High Definition Audio devices.
55 driver supports hardware that conforms with revision 1.0 of the Intel High
56 Definition Audio specification and tries to behave much like the Microsoft
57 Universal Audio Architecture (UAA) draft (revision 0.7b) for handling audio
59 HDA acts like a primary bus, similar to
61 for handling various child buses such as audio, modem and HDMI (High Definition
62 Multimedia Interface).
63 Only audio is implemented in the
67 The High Definition (HD) Audio specification was developed by Intel as the
68 logical successor of the old AC'97 specification and has several advantages,
69 such as higher bandwidth which allows more channels and more detailed formats,
70 support for several logical audio devices, and general purpose DMA channels.
72 The HDA specification defines the register-level interface, physical link
73 characteristics, codec programming models, and codec architectural components.
74 This specification is intended for both device driver developers and hardware
76 .Ss Boot-time Configuration
77 The following variables are available at boot-time through the
80 .Bl -tag -width ".Va hint.pcm.%d.config" -offset indent
81 .It Va hint.pcm.%d.config
82 Configures a range of possible options.
108 An option prefixed with
112 will do the opposite and takes precedence.
113 Options can be separated by whitespace and commas.
115 .Ss Runtime Configuration
118 variables are available in addition to those available to all
121 .Bl -tag -width ".Va dev.pcm.%d.polling" -offset indent
122 .It Va dev.pcm.%d.polling
123 Experimental polling mode, where the driver operates by querying the device
124 state on each tick using
126 Polling is disabled by default.
127 Do not enable it unless you are facing weird interrupt problems or if the
128 device cannot generate interrupts at all.
133 driver supports the following audio chipsets:
172 Generic audio chipsets compatible with the Intel HDA specification should work,
173 but have not been verified yet.
174 The following codecs have been verified to work:
178 Analog Devices AD1981HD
180 Analog Devices AD1983
182 Analog Devices AD1984
184 Analog Devices AD1986A
186 Analog Devices AD1988
188 Analog Devices AD1988B
222 Sigmatel STAC9220D/9223D
244 device driver first appeared in
250 driver was written by
251 .An Stephane E. Potvin Aq sepotvin@videotron.ca
253 .An Ariff Abdullah Aq ariff@FreeBSD.org .
254 This manual page was written by
255 .An Joel Dahl Aq joel@FreeBSD.org .
257 There are a couple of missing features, such as support for Digital
258 S/PDIF and multichannel output.
260 A few Hardware/OEM vendors tend to screw up BIOS settings, thus
263 driver useless, which usually results in a state where the
265 driver seems to attach and work, but without any sound.