summaryrefslogtreecommitdiff
path: root/static/netbsd/man4/hdaudio.4
diff options
context:
space:
mode:
Diffstat (limited to 'static/netbsd/man4/hdaudio.4')
-rw-r--r--static/netbsd/man4/hdaudio.4131
1 files changed, 131 insertions, 0 deletions
diff --git a/static/netbsd/man4/hdaudio.4 b/static/netbsd/man4/hdaudio.4
new file mode 100644
index 00000000..2c53def7
--- /dev/null
+++ b/static/netbsd/man4/hdaudio.4
@@ -0,0 +1,131 @@
+.\" $NetBSD: hdaudio.4,v 1.22 2022/03/21 09:20:04 jmcneill Exp $
+.\"
+.\" Copyright (c) 2009, 2010 The NetBSD Foundation, Inc.
+.\" All rights reserved.
+.\"
+.\" This code is derived from software contributed to The NetBSD Foundation
+.\" by Precedence Technologies Ltd
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+.\" POSSIBILITY OF SUCH DAMAGE.
+.\"
+.Dd March 21, 2022
+.Dt HDAUDIO 4
+.Os
+.Sh NAME
+.Nm hdaudio
+.Nd High Definition Audio device driver
+.Sh SYNOPSIS
+.Cd "hdaudio* at pci? dev ? function ?"
+.Cd "hdafg* at hdaudiobus?"
+.Cd "audio* at audiobus?"
+.Pp
+.Cd "options HDAUDIOVERBOSE"
+.Cd "options HDAUDIO_DEBUG"
+.Cd "options HDAFG_DEBUG"
+.Sh DESCRIPTION
+The
+.Nm
+device driver is expected to support any PCI device which is
+compliant to the High Definition Audio Specification 1.0.
+It was written from scratch following the Intel HD Audio and Microsoft
+Universal Audio Architecture specifications.
+.Pp
+The driver consists of two interlinked components, which reflects the
+hardware design.
+The
+.Nm
+component interfaces with a PCI/PCIe bus and provides an
+.Xr hdaudiobus 4
+onto which different function groups attach.
+Each function group (e.g. audio, vendor-specific modem) is exported as a
+separate child device of the
+.Nm
+controller.
+Audio function groups (a.k.a. audio codec) are exported as
+.Xr hdafg 4
+devices.
+.Pp
+Audio codecs are available from a number of manufacturers and are made up of a
+number of widgets (e.g. audio mixer, output pin, analog-to-digital converter).
+The way the widgets are interlinked varies significantly between
+implementations.
+The tree of widgets must be parsed and mapped to
+.Xr mixer 4
+controls.
+As part of this process, loops in the inter-codec links must be detected
+and muted, bi-directional pins must be set up appropriately and the locations
+of pins determined.
+.Nm
+works backwards by starting with a list of desired, consistent and compatible
+.Xr mixer 4
+controls and configuring/discovering appropriate widget link routes to fit.
+.Pp
+By following the published mechanisms for common implementations of widget
+parsing, it is expected that nearly all High Definition Audio devices will
+be supported without requiring per-device quirks.
+.Sh HARDWARE
+In addition to many on-board sound cards included in mainboards, the following
+add-on card is supported:
+.Bl -tag -width 20n
+.It TerraTec Aureon 7.1 PCIe
+.El
+.Sh SEE ALSO
+.Xr audio 4 ,
+.Xr mixer 4 ,
+.Xr pci 4 ,
+.Xr hdaudioctl 8 ,
+.Pp
+.Lk http://www.intel.com/design/chipsets/hdaudio.htm "Intel High Definition Audio"
+.Pp
+.Lk http://www.microsoft.com/whdc/device/audio/ "Audio Device Technologies for Windows"
+.Sh HISTORY
+The
+.Nm
+device driver appeared in
+.Nx 5.1 .
+.Sh AUTHORS
+The
+.Nm
+driver was written by
+.An Jared McNeill Aq Mt jmcneill@NetBSD.org
+under contract by
+.Lk http://www.precedence.co.uk/ "Precedence Technologies Ltd."
+The UAA-compliant widget parser is derived from the
+.Fx
+snd_hda(4) driver.
+.Sh BUGS
+The following items are not yet implemented:
+.Bl -bullet
+.It
+Improve power management support when driver is idle
+.It
+Add support for non-PCM output formats
+.It
+Handle unsolicited RIRB messages
+.It
+Modem function groups
+.It
+24-bit and 20-bit hardware formats cannot yet be used.
+Since the machine-independent audio layer converts all input from
+userland and the hardware layer to 16-bit precision for processing,
+there would currently be no advantage in using them.
+.El