[alsa-devel] Trying to get unsupported CODEC to work
Alex Austin
circuitsoft.alex at gmail.com
Thu Nov 5 11:27:49 CET 2009
On Thu, Nov 5, 2009 at 4:21 AM, Takashi Iwai <tiwai at suse.de> wrote:
> At Thu, 5 Nov 2009 03:15:52 -0600,
> Alex Austin wrote:
> >
> > I know this thread is ancient, but the question has come to my forefront
> > again, so I'll see if I can ask it better now.
> >
> > On Fri, Dec 12, 2008 at 3:23 AM, Takashi Iwai <tiwai at suse.de> wrote:
> >
> > > Alex Austin wrote:
> > > >
> > > > Shoot. The DAE-3 is a controller for a 5-CH Amplifier card driving
> > > > speakers directly, but I still need the subwoofer output from the
> ALC888.
> > > I
> > > > may be able to get by without the ALC using high-level inputs on the
> sub
> > > amp.
> > > > Even without it, what do I need to do to enable the DAE-3? I'm
> > > comfortable in
> > > > C, but I don't know ALSA much, if at all, yet.
> > >
> > > The codec parser isn't present for DAE-3, and the generic parser
> > > obviously doesn't work for it. So, you need to create a new codec
> > > parser such as other patch_*.c.
> > >
> > > Takashi
> > >
> > >
> > Since the output of codecgraph looks pretty simple, what codec
> > parser would you recommend starting with as a base?
>
> Hard to say... Maybe the one in patch_cirrus.c or patch_ca0110.c,
> which are relatively straightforward parsers. patch_sigmatel.c
> includes many fix-ups. Ditto for realtek.
>
> Thanks. I'll start there. Since I'll be trying to work from codecgraph
output,
can someone supply me a codecgraph for either a cirrus or ca0110 codec
to compare against the parser source?
>
> > On Fri, Dec 12, 2008 at 1:02 AM, Takashi Iwai <tiwai at suse.de> wrote:
> >
> > > At Thu, 11 Dec 2008 16:28:28 -0600,
> > > Alex Austin wrote:
> > > >
> > > > Hello,
> > > > I have an MSI Media Live DIVA motherboard. It has an AMD SB600 HD
> > > > Audio controller, and two CODECs on the HDA bus.
> > > >
> > > > First is an ALC888
> > > > Second is an Intersil DAE-3.
> > >
> > > The analog outputs on both codecs are really used at the same time?
> > > Then it doesn't work right now. Simply "not implemented". And no
> > > concrete plan to fix it yet. This might require a fundamental
> > > re-design.
> > >
> > >
> > > Takashi
> > >
> >
> > Is this still the case? Structurally, why can't this be supported now?
>
> The problem is that the driver device tree is based on the PCI
> device. That is, each card-object is created for each PCI device,
> not for each codec.
>
> The re-design I mentioned above is to create a HD-audio bus per PCI
> device and a card instance for each codec chip on that bus. But, this
> results in the incompatibility with the current setup, and so far, no
> real hardware requires that.
>
> Alternatively, you can add quirks for both codecs to create controls
> freely with different names or with unique indices so that they don't
> conflict with each other.
>
>
> Takashi
>
So, the only reason it won't work now is because of duplicate control names?
On a related note, can audio be routed from an analog input on one codec
to an analog output on another within the controller, or would that need to
be done via a userspace app?
More information about the Alsa-devel
mailing list