the snd_hda stuff

Chuck Robey chuckr at
Thu Jan 3 09:52:43 PST 2008

Hash: SHA1

I've now done a pretty fair amount of reading on this, and I have some
questions, and some comments, so I thought, if you;'d care to, we could
have a little discussion about the snd_hda driver.  I've asked two
questions, too, but go ahead and adress anything that you'd like, I am
looking to provoke some discussion about this oddball architecture.

My own setup is what I've got at home: an ASUS Striker Extreme motherboard.
 The board has a Nvidia 680i chipset, and an Analog Devices AD1988B codec.
 I haven't been able to find any specifications at all about what the 680i
does, excepting a scatterming of reviews which all say that it supports the
Intel High Definition Audio (HDA) Azalia sound architecture.  For the HDA
arch, Intel publishes a really jnice spec on that, and a spec for their
ICH7 chipset, which, while it tells me nothing about what the Nvidia 680i
has, at least tells me in greater detail how the Azalia architecture is
supposed to work.  Reading the datasheet on the Analog Devices AD1988B
tells me (if I trust the advertising wording in that datasheet) that the
AD1988B is supposed to handle Dolby's AC3 and the DTS 5.1, 6.1, and 7.1
encoding, so I also found the specs on those encodings, which happen to
exist on the web also.

So, my first question is, would it be legal to stick these great docs on
our website for folks to download?  Or, if that wasn't legal, maybe if I
supplied the URL's, could we maybe show hotlinks for them?  I know nothing
about the legalities of that, I need advice on what's legal, but I'd sure
like to make what I've gathered available to everyone.

OK, my driver question: first, you need to understand, this chip doesn't
look like any previous audio design, because it's setup up with a large
number of internal muxes, and the entire internal architecture is mutable.
  I guess that's why I think that the task of writing a driver for this
device, well, it must have been a gigantic problem.  Even trying to figure
the device or driver architecture is open to question, not merely to supply
stereo, like earlier designs needed to do.  I'm hugely impressed.

Because the chip design is so very configurable, the man page is
particularly badly needed, but unfortunately, it gives me very little info.
 Is there maybe some doc I haven't yet found, that might help me understand
how I could use the snd_hda driver?  How to configure it, what the inputs
and outputs are?  I can't make use of it as it stands now.  I would be
willing to help on the driver, if it needs more, so if there's any more
documents on either how it works, or maybe how folks want it to work?
Please, help me on this.  For a device that's so different, the need for
documentation is badly needed.

Is there maybe some wiki dealing with the hda driver?  Such a huge task
shouldn't sit unused because it's not documented, should it?

Version: GnuPG v2.0.4 (FreeBSD)
Comment: Using GnuPG with Mozilla -


More information about the freebsd-multimedia mailing list