From: Takashi Iwai <tiwai@suse.de>
To: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Cc: libin.yang@intel.com, alsa-devel@alsa-project.org,
broonie@kernel.org, subhransu.s.prusty@intel.com,
samreen.nilofer@intel.com
Subject: Re: [RFC PATCH] ASoC: codec: hdac_hdmi: no checking monitor in hw_params
Date: Mon, 06 May 2019 17:41:08 +0200 [thread overview]
Message-ID: <s5hzhnz3817.wl-tiwai@suse.de> (raw)
In-Reply-To: <bebcb1f6-1d8b-63aa-a22d-b48047b64809@linux.intel.com>
On Mon, 06 May 2019 17:37:32 +0200,
Pierre-Louis Bossart wrote:
>
> On 5/6/19 1:59 AM, libin.yang@intel.com wrote:
> > From: Libin Yang <libin.yang@intel.com>
> >
> > This patch move the check of monitor from hw_params to trigger callback.
> >
> > The original code will check the monitor presence in hw_params. If the
> > monitor doesn't exist, hw_params will return -ENODEV. Mostly this is OK.
> >
> > However, pulseaudio will check the pcm devices when kernel is booting up.
> > It will try to open, set hw_params, prepare such pcm devices. We can't
> > guarantee that the monitor will be connected when kernel is booting up.
> > Especially, hdac_hdmi will export 3 pcms at most. It's hard to say users
> > will connect 3 monitors to the HDMI/DP ports. This will cause pulseaudio
> > fail in parsing the pcm devices because the driver will return -ENODEV in
> > hw_params.
> >
> > This patch tries to move the check of monitor presence into trigger
> > callback. This can "trick" the pulseaudio the pcm is ready.
> >
> > This bug is found when we try to enable HDMI detection in
> > gnome-sound-setting for ASoC hdac_hdmi. After we enable the hdmi in UCM,
> > pulseaudio will try to parse the hdmi pcm devices. It will cause failure if
> > there are no monitors connected.
>
> Out of curiosity, how is this handled in the legacy driver? I haven't
> done this for a long time but I remember very clearly being able to
> play on the HDMI:3,7, etc devices without any monitors
> connected. You'd get of course no sound but there was no error
> reported to userspace. The hardware is perfectly capable of pushing
> samples into the display controller using the HDAudio/iDisp link.
As mentioned in the thread, PA just picks up the stream that is
connected via a monitor by checking / notified by the corresponding
Jack control. On hdac_hdmi driver, the jack control has different
base name that is irrelevant with the output pins, so PA doesn't know
how to interpret it, hence it's ignored.
thanks,
Takashi
next prev parent reply other threads:[~2019-05-06 15:41 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-06 6:59 [RFC PATCH] ASoC: codec: hdac_hdmi: no checking monitor in hw_params libin.yang
2019-05-06 8:19 ` Jaroslav Kysela
2019-05-06 8:39 ` Takashi Iwai
2019-05-06 8:56 ` Yang, Libin
2019-05-06 9:01 ` Takashi Iwai
2019-05-06 9:13 ` Yang, Libin
2019-05-06 8:46 ` Yang, Libin
2019-05-06 9:03 ` Jaroslav Kysela
2019-05-06 9:25 ` Yang, Libin
2019-05-06 9:31 ` Takashi Iwai
2019-05-06 10:58 ` Hui Wang
2019-05-06 9:25 ` Takashi Iwai
2019-05-06 15:37 ` Pierre-Louis Bossart
2019-05-06 15:41 ` Takashi Iwai [this message]
2019-05-06 15:47 ` Pierre-Louis Bossart
2019-05-06 15:50 ` Takashi Iwai
2019-05-06 15:54 ` Pierre-Louis Bossart
2019-05-07 1:29 ` Yang, Libin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=s5hzhnz3817.wl-tiwai@suse.de \
--to=tiwai@suse.de \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@kernel.org \
--cc=libin.yang@intel.com \
--cc=pierre-louis.bossart@linux.intel.com \
--cc=samreen.nilofer@intel.com \
--cc=subhransu.s.prusty@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox