[alsa-devel] [PATCH v3 14/15] ASoC: hdac_hdmi: Add jack reporting for user space

Vinod Koul vinod.koul at intel.com
Tue Dec 8 08:42:16 CET 2015


On Tue, Dec 08, 2015 at 07:38:46AM +0100, Takashi Iwai wrote:
> On Tue, 08 Dec 2015 07:31:36 +0100,
> Vinod Koul wrote:
> > 
> > On Mon, Dec 07, 2015 at 05:18:06PM +0100, Takashi Iwai wrote:
> > > On Mon, 07 Dec 2015 22:24:28 +0100,
> > > > +		sprintf(jack_name, "HDMI/DP, Pin=%d Jack", pin->nid);
> > > 
> > > Such a name makes sense only to be compatible for PA, and then this
> > > string isn't compatible.  Note that it's not about pin but for PCM
> > > stream.  You may wonder why it matters -- see the whole discussion on
> > > MST support.
> > 
> > So in our case we have added only one PCM Backend in DSP. In codec we have
> > one DAI supported, thus creating a DAIlink
> > 
> > The Codec DAI is mapped to a stream which we fix to a CVT. Future we
> > will add two more streams which are mapped to other two CVTs.
> > 
> > We use MUX controls to allow user to specfiy how CVT and PINs are connected
> > togther, this way we can route stream to any pin.
> > 
> > Extending this concept, behind a pin for MST there may be different 'ports',
> > right? Shouldn't that be another mux configuration :) So we can treat three
> > streams coming to codec to be routed to any pin and then any port. Since we
> > have only 3 CVTs we will have only 3 streams...
> 
> You can't do that easily.  Remember that you may connect up to 64
> different devices at the same time per pin, and this can switch on the
> fly.  How would you implement a MUX?

somehow I was under impression that it is 3.. Btw even if 64 devices can be
connected how many can we render to?

> Though, the max number of converters is limited, thus what you can
> actually use is defined by this constraint.  Due to this, we'll likely
> manage MST for the legacy HDA by assigning MST devs dynamically to
> pins in a certain procedure to make things compatible.

but how many MST devs are you going to create?

> > Back on present :), what do you recommend for us for jack name.
> 
> Depends on your purpose.  If you want to keep it compatible, then use
> the compatible string.

Since compatible string would mean specfying PCM, which we don;t know and is
per machine driver dailink defination, we would go ahead with logical
"HDMI/DP, Pin=%d Jack" names.

Thanks
-- 
~Vinod


More information about the Alsa-devel mailing list