All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
To: Maxime Ripard <maxime.ripard@bootlin.com>,
	Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
	Sean Paul <seanpaul@chromium.org>,
	 Daniel Vetter <daniel.vetter@intel.com>,
	David Airlie <airlied@linux.ie>
Cc: linux-arm-kernel@lists.infradead.org,
	Eric Anholt <eric@anholt.net>,
	dri-devel@lists.freedesktop.org,
	Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
	eben@raspberrypi.org
Subject: Re: [PATCH 1/7] drm/vc4: hdmi: Check that the monitor supports HDMI audio
Date: Mon, 04 Mar 2019 16:10:55 +0100	[thread overview]
Message-ID: <754196b5433b3e97bdfe07c8286c087e11b00242.camel@bootlin.com> (raw)
In-Reply-To: <f0e4c1b92b2c1a98189fd891c9ce0f65031636b0.1551711042.git-series.maxime.ripard@bootlin.com>

Hi,

On Mon, 2019-03-04 at 15:52 +0100, Maxime Ripard wrote:
> The current code assumes as soon as the device is an HDMI one that it
> supports an audio sink. However, strictly speaking, this is exposed as a
> separate part of EDID.
> 
> This can be checked through the drm_detect_monitor_audio function, so let's
> use it and make sure that we can use the HDMI monitor as an output before
> sending sound.
> 
> Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>

Reviewed-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>

Cheers,

Paul

> ---
>  drivers/gpu/drm/vc4/vc4_hdmi.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c
> index 88fd5df7e7dc..a1bdc065c47c 100644
> --- a/drivers/gpu/drm/vc4/vc4_hdmi.c
> +++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
> @@ -109,6 +109,7 @@ struct vc4_hdmi_encoder {
>  	struct vc4_encoder base;
>  	bool hdmi_monitor;
>  	bool limited_rgb_range;
> +	bool monitor_has_audio;
>  };
>  
>  static inline struct vc4_hdmi_encoder *
> @@ -278,6 +279,7 @@ static int vc4_hdmi_connector_get_modes(struct drm_connector *connector)
>  		return -ENODEV;
>  
>  	vc4_encoder->hdmi_monitor = drm_detect_hdmi_monitor(edid);
> +	vc4_encoder->monitor_has_audio = drm_detect_monitor_audio(edid);
>  
>  	drm_connector_update_edid_property(connector, edid);
>  	ret = drm_add_edid_modes(connector, edid);
> @@ -785,9 +787,13 @@ static int vc4_hdmi_audio_startup(struct snd_pcm_substream *substream,
>  {
>  	struct vc4_hdmi *hdmi = dai_to_hdmi(dai);
>  	struct drm_encoder *encoder = hdmi->encoder;
> +	struct vc4_hdmi_encoder *vc4_encoder = to_vc4_hdmi_encoder(encoder);
>  	struct vc4_dev *vc4 = to_vc4_dev(encoder->dev);
>  	int ret;
>  
> +	if (!vc4_encoder->monitor_has_audio)
> +		return -ENODEV;
> +
>  	if (hdmi->audio.substream && hdmi->audio.substream != substream)
>  		return -EINVAL;
>  
-- 
Paul Kocialkowski, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
To: Maxime Ripard <maxime.ripard@bootlin.com>,
	Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
	Sean Paul <seanpaul@chromium.org>,
	Daniel Vetter <daniel.vetter@intel.com>,
	David Airlie <airlied@linux.ie>
Cc: linux-arm-kernel@lists.infradead.org,
	dri-devel@lists.freedesktop.org,
	Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
	eben@raspberrypi.org
Subject: Re: [PATCH 1/7] drm/vc4: hdmi: Check that the monitor supports HDMI audio
Date: Mon, 04 Mar 2019 16:10:55 +0100	[thread overview]
Message-ID: <754196b5433b3e97bdfe07c8286c087e11b00242.camel@bootlin.com> (raw)
In-Reply-To: <f0e4c1b92b2c1a98189fd891c9ce0f65031636b0.1551711042.git-series.maxime.ripard@bootlin.com>

Hi,

On Mon, 2019-03-04 at 15:52 +0100, Maxime Ripard wrote:
> The current code assumes as soon as the device is an HDMI one that it
> supports an audio sink. However, strictly speaking, this is exposed as a
> separate part of EDID.
> 
> This can be checked through the drm_detect_monitor_audio function, so let's
> use it and make sure that we can use the HDMI monitor as an output before
> sending sound.
> 
> Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>

Reviewed-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>

Cheers,

Paul

> ---
>  drivers/gpu/drm/vc4/vc4_hdmi.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c
> index 88fd5df7e7dc..a1bdc065c47c 100644
> --- a/drivers/gpu/drm/vc4/vc4_hdmi.c
> +++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
> @@ -109,6 +109,7 @@ struct vc4_hdmi_encoder {
>  	struct vc4_encoder base;
>  	bool hdmi_monitor;
>  	bool limited_rgb_range;
> +	bool monitor_has_audio;
>  };
>  
>  static inline struct vc4_hdmi_encoder *
> @@ -278,6 +279,7 @@ static int vc4_hdmi_connector_get_modes(struct drm_connector *connector)
>  		return -ENODEV;
>  
>  	vc4_encoder->hdmi_monitor = drm_detect_hdmi_monitor(edid);
> +	vc4_encoder->monitor_has_audio = drm_detect_monitor_audio(edid);
>  
>  	drm_connector_update_edid_property(connector, edid);
>  	ret = drm_add_edid_modes(connector, edid);
> @@ -785,9 +787,13 @@ static int vc4_hdmi_audio_startup(struct snd_pcm_substream *substream,
>  {
>  	struct vc4_hdmi *hdmi = dai_to_hdmi(dai);
>  	struct drm_encoder *encoder = hdmi->encoder;
> +	struct vc4_hdmi_encoder *vc4_encoder = to_vc4_hdmi_encoder(encoder);
>  	struct vc4_dev *vc4 = to_vc4_dev(encoder->dev);
>  	int ret;
>  
> +	if (!vc4_encoder->monitor_has_audio)
> +		return -ENODEV;
> +
>  	if (hdmi->audio.substream && hdmi->audio.substream != substream)
>  		return -EINVAL;
>  
-- 
Paul Kocialkowski, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2019-03-04 15:11 UTC|newest]

Thread overview: 87+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-04 14:52 [PATCH 0/7] drm/vc4: Allow for more boot-time configuration Maxime Ripard
2019-03-04 14:52 ` Maxime Ripard
2019-03-04 14:52 ` [PATCH 1/7] drm/vc4: hdmi: Check that the monitor supports HDMI audio Maxime Ripard
2019-03-04 14:52   ` Maxime Ripard
2019-03-04 15:10   ` Paul Kocialkowski [this message]
2019-03-04 15:10     ` Paul Kocialkowski
2019-03-04 15:54   ` Stefan Wahren
2019-03-04 15:54     ` Stefan Wahren
2019-03-04 18:28     ` Eric Anholt
2019-03-04 18:28       ` Eric Anholt
2019-03-04 20:06       ` Stefan Wahren
2019-03-04 20:06         ` Stefan Wahren
2019-03-04 21:09         ` Eric Anholt
2019-03-04 21:09           ` Eric Anholt
2019-03-04 14:52 ` [PATCH 2/7] drm/edid: Allow to ignore the audio EDID data Maxime Ripard
2019-03-04 14:52   ` Maxime Ripard
2019-03-04 15:47   ` Jani Nikula
2019-03-04 15:47     ` Jani Nikula
2019-03-04 15:51     ` Adam Jackson
2019-03-04 15:51       ` Adam Jackson
2019-03-05  8:08     ` Maxime Ripard
2019-03-05  8:08       ` Maxime Ripard
2019-03-05 10:33       ` Jani Nikula
2019-03-05 10:33         ` Jani Nikula
2019-03-05 15:08       ` Adam Jackson
2019-03-05 15:08         ` Adam Jackson
2019-03-04 15:59   ` Ville Syrjälä
2019-03-04 15:59     ` Ville Syrjälä
2019-03-04 19:53   ` Eric Anholt
2019-03-04 19:53     ` Eric Anholt
2019-03-04 20:05     ` Alex Deucher
2019-03-04 20:05       ` Alex Deucher
2019-03-05  9:12       ` Maxime Ripard
2019-03-05  9:12         ` Maxime Ripard
2019-03-05 15:24         ` Ville Syrjälä
2019-03-05 15:24           ` Ville Syrjälä
2019-03-05 19:15           ` Ville Syrjälä
2019-03-05 19:15             ` Ville Syrjälä
2019-03-05 19:21             ` Alex Deucher
2019-03-05 19:36               ` Ville Syrjälä
2019-03-05 19:36                 ` Ville Syrjälä
2019-03-13 10:44                 ` Takashi Iwai
2019-03-13 10:44                   ` Takashi Iwai
2019-03-13 14:03                   ` Maxime Ripard
2019-03-13 14:03                     ` Maxime Ripard
2019-03-05 18:11         ` Eric Anholt
2019-03-05 18:11           ` Eric Anholt
2019-03-11 13:07           ` Daniel Vetter
2019-03-11 13:07             ` Daniel Vetter
2019-03-05 21:47         ` Eric Anholt
2019-03-05 21:47           ` Eric Anholt
2019-03-06  8:52           ` Maxime Ripard
2019-03-06  8:52             ` Maxime Ripard
2019-03-06 13:22           ` Maxime Ripard
2019-03-06 13:22             ` Maxime Ripard
2019-03-06 17:51             ` Eric Anholt
2019-03-06 17:51               ` Eric Anholt
2019-03-04 14:52 ` [PATCH 3/7] drm/edid: Allow to ignore the HDMI monitor mode Maxime Ripard
2019-03-04 14:52   ` Maxime Ripard
2019-03-04 15:14   ` Paul Kocialkowski
2019-03-04 15:14     ` Paul Kocialkowski
2019-03-04 15:48   ` Jani Nikula
2019-03-04 15:48     ` Jani Nikula
2019-03-04 20:02   ` Eric Anholt
2019-03-04 20:02     ` Eric Anholt
2019-03-05  9:24     ` Maxime Ripard
2019-03-05  9:24       ` Maxime Ripard
2019-03-04 14:52 ` [PATCH 4/7] drm/modes: Rewrite the command line parser Maxime Ripard
2019-03-04 14:52   ` Maxime Ripard
2019-03-04 14:52 ` [PATCH 5/7] drm/modes: Support modes names on the command line Maxime Ripard
2019-03-04 14:52   ` Maxime Ripard
2019-03-04 14:52 ` [PATCH 6/7] drm/modes: Allow to specify rotation and reflection on the commandline Maxime Ripard
2019-03-04 14:52   ` Maxime Ripard
2019-03-04 14:52 ` [PATCH 7/7] drm/modes: Parse overscan properties Maxime Ripard
2019-03-04 14:52   ` Maxime Ripard
2019-03-04 15:21 ` [PATCH 0/7] drm/vc4: Allow for more boot-time configuration Peter Stuge
2019-03-04 15:21   ` Peter Stuge
2019-03-04 15:56   ` Maxime Ripard
2019-03-04 15:56     ` Maxime Ripard
2019-03-04 15:44 ` Stefan Wahren
2019-03-04 15:44   ` Stefan Wahren
2019-03-04 20:06 ` Eric Anholt
2019-03-04 20:06   ` Eric Anholt
2019-03-05  9:14   ` Maxime Ripard
2019-03-05  9:14     ` Maxime Ripard
2019-03-11 13:00     ` Daniel Vetter
2019-03-11 13:00       ` Daniel Vetter

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=754196b5433b3e97bdfe07c8286c087e11b00242.camel@bootlin.com \
    --to=paul.kocialkowski@bootlin.com \
    --cc=airlied@linux.ie \
    --cc=daniel.vetter@intel.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=eben@raspberrypi.org \
    --cc=eric@anholt.net \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=maxime.ripard@bootlin.com \
    --cc=seanpaul@chromium.org \
    --cc=thomas.petazzoni@bootlin.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.