[alsa-devel] HDA codec in embedded device

Stephen Warren swarren at wwwdotorg.org
Thu May 31 18:02:21 CEST 2012

On 05/31/2012 12:13 AM, Thierry Reding wrote:
> Hi,
> I work on an Atom-based platform that uses a Realtek ALC892 codec connected
> via HDA. The current code in patch_realtek.c seems to assume a standard
> desktop setup and maps the ports accordingly. The setup that I have is
> entirely different and involves, among other things, to reconfigure some of
> the ports typically used as outputs as inputs and vice versa. It'll also need
> to provide a way to pass through some inputs on the outputs without going
> through the DAC.
> All of these features are supported by the ALC982, but I don't see how this
> could be implemented with the current driver. My question is how this could
> possibly be solved in a way acceptable for mainline?

The way I solved this was to add a machine-specific fixup rto
alc269_fixups[] that set up the pin default registers as required by the
HW prior to the parser interpreting those fields. I assume the same
would work on the alc982.

I think in general as Takashi mentioned, the driver assumes that the pin
default registers are already set up to values correct for the HW.
Typically, I believe this is done by the SBIOS or audio card BIOS prior
to the OS starting, or perhaps by EEPROM/straps in the HW. Is there a
way that can be made to happen?

More information about the Alsa-devel mailing list