[alsa-devel] [RFC PATCH 3/4] ASoC: hdac_hdmi: refine hdmi jacks

Yang, Libin libin.yang at intel.com
Thu Jun 27 03:46:53 CEST 2019


Hi Takashi,

>-----Original Message-----
>From: Takashi Iwai [mailto:tiwai at suse.de]
>Sent: Tuesday, June 25, 2019 7:06 PM
>To: Yang, Libin <libin.yang at intel.com>
>Cc: 'alsa-devel at alsa-project.org' <alsa-devel at alsa-project.org>;
>'broonie at kernel.org' <broonie at kernel.org>; 'pierre-
>louis.bossart at linux.intel.com' <pierre-louis.bossart at linux.intel.com>; 'Hui
>Wang' <hui.wang at canonical.com>
>Subject: Re: [alsa-devel] [RFC PATCH 3/4] ASoC: hdac_hdmi: refine hdmi jacks
>
>On Tue, 25 Jun 2019 08:02:45 +0200,
>Yang, Libin wrote:
>>
>> >
>> >Sorry for a long delay for the hdmi jacks. I was busy on another
>> >critical issue last 2 weeks. I have worked out the UCM configuration
>> >files. Please check the attachment. It is a long file, so I use the attachment
>instead of the patch mode.
>> >Based on my test, it works well. Could you please help review if the
>> >configuration file is OK or not. I will do more test on the meantime,
>> >including DPMST and NON-DPMST.
>>
>> With some more tests on the new hdmi jack with UCM configuration, I
>> found that the kernel patch can always notify the jack hotplug event
>> to userspace correctly. However, the userspace can't set the amixer
>> correctly based on the UCM configurations sometimes.
>>
>> Here is the details:
>> There are 3 PCMs on Intel platforms. Let's call them pcm1, pcm2, pcm3.
>> And there are 3 pins (pin5, pin6, pin7). For DPMST, and each pin has 3 ports:
>> port0, port1, port2.
>>
>> For non-DPMST, we can set pin5 <=> pcm1, pin6 <=> pcm2, pin7 <=> pcm3.
>> This can always work.
>>
>> For DPMST, as there are 9 ports using 3 pcms. So we should assign
>> 1 pcm to 3 ports. For example, pin5-port0, pin6-port1 and pin7-port2
>> are using pcm1;  pin5-port1, pin6-port2 and pin7-port0 are using pcm2;
>> pin5-port2; pin6-port3 and pin7-port1 are using pcm3.
>> In this setting, we should setting the ConflictingDevice in UCM.
>> For example, pin5-port0 is conflicting with pin6-port1 and pin7-port2.
>> Hui and I found if we set one device conflicting with 2 devices, the
>> amixer setting will be wrong and it will not following UCM
>> configuration setting when we are hotplugging the monitors.
>
>How wrong would it behave?  Only one of them is done?
>
>> Hui and I thought this may be the alsa-lib or pulseaudio issue.
>
>You can try alsaucm directly without PA, too.
>But in general the conflicting device management is done in PA, so I'd begin
>with tracking the PA UCM code at first.

Sorry for delay reply. I take annual leave these days. 
The behavior is like Hui's description. Thanks for the suggestion. I will
try alsaucm firstly for the debug.

Regards,
Libin

>
>
>thanks,
>
>Takashi


More information about the Alsa-devel mailing list