From: Jani Nikula <jani.nikula@intel.com> To: dri-devel@lists.freedesktop.org Cc: Jani Nikula <jani.nikula@intel.com>, intel-gfx@lists.freedesktop.org, Laurent Pinchart <laurent.pinchart@ideasonboard.com> Subject: [PATCH 1/9] drm/edid: parse display info has_audio similar to is_hdmi Date: Thu, 1 Sep 2022 15:47:03 +0300 [thread overview] Message-ID: <59682553399bacfbbfaf61faa5f29646570681c7.1662036058.git.jani.nikula@intel.com> (raw) In-Reply-To: <cover.1662036058.git.jani.nikula@intel.com> Since we already iterate everything that's needed for determining audio, reduce the need to call drm_detect_monitor_audio() by storing has_audio to connector info. Signed-off-by: Jani Nikula <jani.nikula@intel.com> --- drivers/gpu/drm/drm_edid.c | 6 ++++++ include/drm/drm_connector.h | 8 ++++++++ 2 files changed, 14 insertions(+) diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c index 90a5e26eafa8..fe34ff98e5e9 100644 --- a/drivers/gpu/drm/drm_edid.c +++ b/drivers/gpu/drm/drm_edid.c @@ -5994,6 +5994,9 @@ static void drm_parse_cea_ext(struct drm_connector *connector, info->color_formats |= DRM_COLOR_FORMAT_YCBCR444; if (edid_ext[3] & EDID_CEA_YCRCB422) info->color_formats |= DRM_COLOR_FORMAT_YCBCR422; + if (edid_ext[3] & EDID_BASIC_AUDIO) + info->has_audio = true; + } drm_edid_iter_end(&edid_iter); @@ -6015,6 +6018,8 @@ static void drm_parse_cea_ext(struct drm_connector *connector, drm_parse_vcdb(connector, data); else if (cea_db_is_hdmi_hdr_metadata_block(db)) drm_parse_hdr_metadata_block(connector, data); + else if (cea_db_tag(db) == CTA_DB_AUDIO) + info->has_audio = true; } cea_db_iter_end(&iter); } @@ -6141,6 +6146,7 @@ static void drm_reset_display_info(struct drm_connector *connector) info->max_tmds_clock = 0; info->dvi_dual = false; info->is_hdmi = false; + info->has_audio = false; info->has_hdmi_infoframe = false; info->rgb_quant_range_selectable = false; memset(&info->hdmi, 0, sizeof(info->hdmi)); diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h index 248206bbd975..a9f714612b44 100644 --- a/include/drm/drm_connector.h +++ b/include/drm/drm_connector.h @@ -597,6 +597,14 @@ struct drm_display_info { */ bool is_hdmi; + /** + * @has_audio: True if the sink supports audio. + * + * This field shall be used instead of calling + * drm_detect_monitor_audio() when possible. + */ + bool has_audio; + /** * @has_hdmi_infoframe: Does the sink support the HDMI infoframe? */ -- 2.34.1
WARNING: multiple messages have this Message-ID (diff)
From: Jani Nikula <jani.nikula@intel.com> To: dri-devel@lists.freedesktop.org Cc: Jani Nikula <jani.nikula@intel.com>, intel-gfx@lists.freedesktop.org, Laurent Pinchart <laurent.pinchart@ideasonboard.com> Subject: [Intel-gfx] [PATCH 1/9] drm/edid: parse display info has_audio similar to is_hdmi Date: Thu, 1 Sep 2022 15:47:03 +0300 [thread overview] Message-ID: <59682553399bacfbbfaf61faa5f29646570681c7.1662036058.git.jani.nikula@intel.com> (raw) In-Reply-To: <cover.1662036058.git.jani.nikula@intel.com> Since we already iterate everything that's needed for determining audio, reduce the need to call drm_detect_monitor_audio() by storing has_audio to connector info. Signed-off-by: Jani Nikula <jani.nikula@intel.com> --- drivers/gpu/drm/drm_edid.c | 6 ++++++ include/drm/drm_connector.h | 8 ++++++++ 2 files changed, 14 insertions(+) diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c index 90a5e26eafa8..fe34ff98e5e9 100644 --- a/drivers/gpu/drm/drm_edid.c +++ b/drivers/gpu/drm/drm_edid.c @@ -5994,6 +5994,9 @@ static void drm_parse_cea_ext(struct drm_connector *connector, info->color_formats |= DRM_COLOR_FORMAT_YCBCR444; if (edid_ext[3] & EDID_CEA_YCRCB422) info->color_formats |= DRM_COLOR_FORMAT_YCBCR422; + if (edid_ext[3] & EDID_BASIC_AUDIO) + info->has_audio = true; + } drm_edid_iter_end(&edid_iter); @@ -6015,6 +6018,8 @@ static void drm_parse_cea_ext(struct drm_connector *connector, drm_parse_vcdb(connector, data); else if (cea_db_is_hdmi_hdr_metadata_block(db)) drm_parse_hdr_metadata_block(connector, data); + else if (cea_db_tag(db) == CTA_DB_AUDIO) + info->has_audio = true; } cea_db_iter_end(&iter); } @@ -6141,6 +6146,7 @@ static void drm_reset_display_info(struct drm_connector *connector) info->max_tmds_clock = 0; info->dvi_dual = false; info->is_hdmi = false; + info->has_audio = false; info->has_hdmi_infoframe = false; info->rgb_quant_range_selectable = false; memset(&info->hdmi, 0, sizeof(info->hdmi)); diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h index 248206bbd975..a9f714612b44 100644 --- a/include/drm/drm_connector.h +++ b/include/drm/drm_connector.h @@ -597,6 +597,14 @@ struct drm_display_info { */ bool is_hdmi; + /** + * @has_audio: True if the sink supports audio. + * + * This field shall be used instead of calling + * drm_detect_monitor_audio() when possible. + */ + bool has_audio; + /** * @has_hdmi_infoframe: Does the sink support the HDMI infoframe? */ -- 2.34.1
next prev parent reply other threads:[~2022-09-01 12:47 UTC|newest] Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-09-01 12:47 [PATCH 0/9] drm: convert to using is_hdmi and has_audio from display info Jani Nikula 2022-09-01 12:47 ` Jani Nikula 2022-09-01 12:47 ` [Intel-gfx] " Jani Nikula 2022-09-01 12:47 ` Jani Nikula 2022-09-01 12:47 ` [Nouveau] " Jani Nikula 2022-09-01 12:47 ` Jani Nikula [this message] 2022-09-01 12:47 ` [Intel-gfx] [PATCH 1/9] drm/edid: parse display info has_audio similar to is_hdmi Jani Nikula 2022-09-01 12:47 ` [Nouveau] [PATCH 2/9] drm/nouveau: convert to using is_hdmi and has_audio from display info Jani Nikula 2022-09-01 12:47 ` [Intel-gfx] " Jani Nikula 2022-09-01 12:47 ` Jani Nikula 2022-09-01 20:16 ` Lyude Paul 2022-09-01 20:16 ` [Intel-gfx] " Lyude Paul 2022-09-01 20:16 ` [Nouveau] " Lyude Paul 2022-09-01 12:47 ` [PATCH 3/9] drm/radeon: " Jani Nikula 2022-09-01 12:47 ` [Intel-gfx] " Jani Nikula 2022-09-01 12:47 ` [PATCH 4/9] drm/tegra: convert to using is_hdmi " Jani Nikula 2022-09-01 12:47 ` [Intel-gfx] " Jani Nikula 2022-09-01 12:47 ` Jani Nikula 2022-09-15 12:29 ` Thierry Reding 2022-09-15 12:29 ` [Intel-gfx] " Thierry Reding 2022-09-15 12:29 ` Thierry Reding 2022-09-01 12:47 ` [PATCH 5/9] drm/exynos: " Jani Nikula 2022-09-01 12:47 ` [Intel-gfx] " Jani Nikula 2022-09-01 12:47 ` [PATCH 6/9] drm/i2c/tda998x: convert to using has_audio from display_info Jani Nikula 2022-09-01 12:47 ` [Intel-gfx] " Jani Nikula 2022-09-01 12:47 ` [PATCH 7/9] drm/sti/sti_hdmi: convert to using is_hdmi from display info Jani Nikula 2022-09-01 12:47 ` [Intel-gfx] " Jani Nikula 2023-04-22 17:06 ` Alain Volmat 2023-04-22 17:06 ` [Intel-gfx] " Alain Volmat 2022-09-01 12:47 ` [PATCH 8/9] drm/rockchip: cdn-dp: call drm_connector_update_edid_property() unconditionally Jani Nikula 2022-09-01 12:47 ` [Intel-gfx] " Jani Nikula 2022-09-05 10:12 ` Heiko Stübner 2022-09-05 10:12 ` [Intel-gfx] " Heiko Stübner 2022-09-01 12:47 ` [PATCH 9/9] drm/rockchip: convert to using has_audio from display_info Jani Nikula 2022-09-01 12:47 ` [Intel-gfx] " Jani Nikula 2022-09-05 10:13 ` Heiko Stübner 2022-09-05 10:13 ` [Intel-gfx] " Heiko Stübner 2022-09-01 13:49 ` [Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm: convert to using is_hdmi and has_audio from display info Patchwork 2022-09-01 14:00 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork 2022-09-02 10:38 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
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=59682553399bacfbbfaf61faa5f29646570681c7.1662036058.git.jani.nikula@intel.com \ --to=jani.nikula@intel.com \ --cc=dri-devel@lists.freedesktop.org \ --cc=intel-gfx@lists.freedesktop.org \ --cc=laurent.pinchart@ideasonboard.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: linkBe 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.