From: "Shankar, Uma" <uma.shankar@intel.com>
To: "Nikula, Jani" <jani.nikula@intel.com>,
"intel-gfx@lists.freedesktop.org"
<intel-gfx@lists.freedesktop.org>
Cc: "Nikula, Jani" <jani.nikula@intel.com>,
"Varide, Nischal" <nischal.varide@intel.com>
Subject: Re: [Intel-gfx] [PATCH v3 8/9] drm/i915/edp: modify fixed and downclock modes for MSO
Date: Mon, 22 Feb 2021 09:21:47 +0000 [thread overview]
Message-ID: <6f00a4db0fc741c8b7b54491dd8ed645@intel.com> (raw)
In-Reply-To: <d4d6e9e6b62923d3915cb69b94bcf4b8795db749.1613054234.git.jani.nikula@intel.com>
> -----Original Message-----
> From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Jani Nikula
> Sent: Thursday, February 11, 2021 8:22 PM
> To: intel-gfx@lists.freedesktop.org
> Cc: Nikula, Jani <jani.nikula@intel.com>; Varide, Nischal <nischal.varide@intel.com>
> Subject: [Intel-gfx] [PATCH v3 8/9] drm/i915/edp: modify fixed and downclock
> modes for MSO
>
> In the case of MSO (Multi-SST Operation), the EDID contains the timings for a single
> panel segment. We'll want to hide the fact from userspace, and expose modes that
> span the entire display.
>
> Don't modify the EDID, as the userspace should not use that for modesetting, only
> modify the actual modes.
>
> v3: Use pixel overlap if available.
Looks Good to me.
Reviewed-by: Uma Shankar <uma.shankar@intel.com>
> v2: Rename intel_dp_mso_mode_fixup -> intel_edp_mso_mode_fixup
>
> Cc: Nischal Varide <nischal.varide@intel.com>
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_dp.c | 29 +++++++++++++++++++++++++
> 1 file changed, 29 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c
> b/drivers/gpu/drm/i915/display/intel_dp.c
> index 48e65b9a967a..5d5b16f70ed2 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -3516,6 +3516,31 @@ static void intel_dp_get_dsc_sink_cap(struct intel_dp
> *intel_dp)
> }
> }
>
> +static void intel_edp_mso_mode_fixup(struct intel_connector *connector,
> + struct drm_display_mode *mode) {
> + struct intel_dp *intel_dp = intel_attached_dp(connector);
> + struct drm_i915_private *i915 = to_i915(connector->base.dev);
> + int n = intel_dp->mso_link_count;
> + int overlap = intel_dp->mso_pixel_overlap;
> +
> + if (!mode || !n)
> + return;
> +
> + mode->hdisplay = (mode->hdisplay - overlap) * n;
> + mode->hsync_start = (mode->hsync_start - overlap) * n;
> + mode->hsync_end = (mode->hsync_end - overlap) * n;
> + mode->htotal = (mode->htotal - overlap) * n;
> + mode->clock *= n;
> +
> + drm_mode_set_name(mode);
> +
> + drm_dbg_kms(&i915->drm,
> + "[CONNECTOR:%d:%s] using generated MSO mode: ",
> + connector->base.base.id, connector->base.name);
> + drm_mode_debug_printmodeline(mode);
> +}
> +
> static void intel_edp_mso_init(struct intel_dp *intel_dp) {
> struct drm_i915_private *i915 = dp_to_i915(intel_dp); @@ -6493,6
> +6518,10 @@ static bool intel_edp_init_connector(struct intel_dp *intel_dp,
> if (fixed_mode)
> downclock_mode = intel_dp_drrs_init(intel_connector,
> fixed_mode);
>
> + /* multiply the mode clock and horizontal timings for MSO */
> + intel_edp_mso_mode_fixup(intel_connector, fixed_mode);
> + intel_edp_mso_mode_fixup(intel_connector, downclock_mode);
> +
> /* fallback to VBT if available for eDP */
> if (!fixed_mode)
> fixed_mode = intel_panel_vbt_fixed_mode(intel_connector);
> --
> 2.20.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2021-02-22 9:21 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-11 14:52 [Intel-gfx] [PATCH v3 0/9] drm/i915/edp: enable eDP Multi-SST Operation (MSO) Jani Nikula
2021-02-11 14:52 ` [Intel-gfx] [PATCH v3 1/9] drm/dp: add MSO related DPCD registers Jani Nikula
2021-02-22 5:25 ` Shankar, Uma
2021-02-11 14:52 ` [Intel-gfx] [PATCH v3 2/9] drm/i915/edp: reject modes with dimensions other than fixed mode Jani Nikula
2021-02-22 5:36 ` Shankar, Uma
2021-02-11 14:52 ` [Intel-gfx] [PATCH v3 3/9] drm/i915/edp: always add fixed mode to probed modes in ->get_modes() Jani Nikula
2021-02-22 5:50 ` Shankar, Uma
2021-02-11 14:52 ` [Intel-gfx] [PATCH v3 4/9] drm/i915/edp: read sink MSO configuration for eDP 1.4+ Jani Nikula
2021-02-22 5:57 ` Shankar, Uma
2021-02-11 14:52 ` [Intel-gfx] [PATCH v3 5/9] drm/i915/reg: add stream splitter configuration definitions Jani Nikula
2021-02-22 5:58 ` Shankar, Uma
2021-02-22 16:31 ` Jani Nikula
2021-02-11 14:52 ` [Intel-gfx] [PATCH v3 6/9] drm/i915/mso: add splitter state readout for platforms that support it Jani Nikula
2021-02-22 9:09 ` Shankar, Uma
2021-02-22 16:55 ` Jani Nikula
2021-02-22 18:11 ` Shankar, Uma
2021-03-02 10:25 ` Jani Nikula
2021-03-02 10:29 ` Shankar, Uma
2021-03-02 14:57 ` Ville Syrjälä
2021-03-02 17:20 ` Jani Nikula
2021-02-11 14:52 ` [Intel-gfx] [PATCH v3 7/9] drm/i915/mso: add splitter state check Jani Nikula
2021-02-22 9:13 ` Shankar, Uma
2021-02-11 14:52 ` [Intel-gfx] [PATCH v3 8/9] drm/i915/edp: modify fixed and downclock modes for MSO Jani Nikula
2021-02-22 9:21 ` Shankar, Uma [this message]
2021-02-11 14:52 ` [Intel-gfx] [PATCH v3 9/9] drm/i915/edp: enable eDP MSO during link training Jani Nikula
2021-02-22 10:06 ` Shankar, Uma
2021-02-11 15:36 ` [Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915/edp: enable eDP Multi-SST Operation (MSO) Patchwork
2021-02-11 16:03 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2021-02-11 17:28 ` [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=6f00a4db0fc741c8b7b54491dd8ed645@intel.com \
--to=uma.shankar@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jani.nikula@intel.com \
--cc=nischal.varide@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