xref: /freebsd/share/man/man4/snd_hda.4 (revision acd3428b7d3e94cef0e1881c868cb4b131d4ff41)
1.\" Copyright (c) 2006 Joel Dahl <joel@FreeBSD.org>
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.\" $FreeBSD$
26.\"
27.Dd October 8, 2006
28.Dt SND_HDA 4
29.Os
30.Sh NAME
31.Nm snd_hda
32.Nd "Intel High Definition Audio bridge device driver"
33.Sh SYNOPSIS
34To compile this driver into the kernel, place the following lines in your
35kernel configuration file:
36.Bd -ragged -offset indent
37.Cd "device sound"
38.Cd "device snd_hda"
39.Ed
40.Pp
41Alternatively, to load the driver as a module at boot time, place the
42following line in
43.Xr loader.conf 5 :
44.Bd -literal -offset indent
45snd_hda_load="YES"
46.Ed
47.Sh DESCRIPTION
48The
49.Nm
50bridge device driver allows the generic audio driver,
51.Xr sound 4 ,
52to attach to Intel High Definition Audio devices.
53The
54.Nm
55driver supports hardware that conforms with revision 1.0 of the Intel High
56Definition Audio specification and tries to behave much like the Microsoft
57Universal Audio Architecture (UAA) draft (revision 0.7b) for handling audio
58devices.
59HDA acts like a primary bus, similar to
60.Xr miibus 4 ,
61for handling various child buses such as audio, modem and HDMI (High Definition
62Multimedia Interface).
63Only audio is implemented in the
64.Nm
65driver.
66.Pp
67The High Definition (HD) Audio specification was developed by Intel as the
68logical successor of the old AC'97 specification and has several advantages,
69such as higher bandwidth which allows more channels and more detailed formats,
70support for several logical audio devices, and general purpose DMA channels.
71.Pp
72The HDA specification defines the register-level interface, physical link
73characteristics, codec programming models, and codec architectural components.
74This specification is intended for both device driver developers and hardware
75component designers.
76.Sh HARDWARE
77The
78.Nm
79driver supports the following audio chipsets:
80.Pp
81.Bl -bullet -compact
82.It
83ATI SB450
84.It
85ATI SB600
86.It
87Intel 631x/632xESB
88.It
89Intel 82801F
90.It
91Intel 82801G
92.It
93Intel 82801H
94.It
95nVidia MCP51
96.It
97nVidia MCP55
98.It
99nVidia MCP61A
100.It
101nVidia MCP61B
102.It
103nVidia MCP65A
104.It
105nVidia MCP65B
106.It
107SiS 966
108.It
109VIA VT8251/8237A
110.El
111.Pp
112Generic Audio chipsets compatible with the Intel HDA specification should work,
113but have not been verified yet.
114The following codecs have been verified to work:
115.Pp
116.Bl -bullet -compact
117.It
118Analog Device AD1981HD
119.It
120Analog Device AD1983
121.It
122Analog Device AD1986A
123.It
124CMedia CMI9880
125.It
126Conexant Venice
127.It
128Conexant Waikiki
129.It
130Realtek ALC260
131.It
132Realtek ALC861
133.It
134Realtek ALC880
135.It
136Realtek ALC882
137.It
138Realtek ALC883
139.It
140Sigmatel STAC9220
141.It
142Sigmatel STAC9220D/9223D
143.It
144Sigmatel STAC9221
145.It
146Sigmatel STAC9221D
147.El
148.Sh SEE ALSO
149.Xr sound 4 ,
150.Xr loader.conf 5
151.Sh HISTORY
152The
153.Nm
154device driver first appeared in
155.Fx 7.0 .
156.Sh AUTHORS
157.An -nosplit
158The
159.Nm
160driver was written by
161.An Stephane E. Potvin Aq sepotvin@videotron.ca
162and
163.An Ariff Abdullah Aq ariff@FreeBSD.org .
164This manual page was written by
165.An Joel Dahl Aq joel@FreeBSD.org .
166.Sh BUGS
167There are a couple of missing features, such as support for Digital
168S/PDIF and multichannel output.
169.Pp
170A few Hardware/OEM vendors tend to screw up BIOS settings, thus
171rendering the
172.Nm
173driver useless, which usually results in a state where the
174.Nm
175driver seems to attach and work, but without any sound.
176