diff options
| author | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2026-04-09 13:15:36 +0300 |
|---|---|---|
| committer | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2026-04-13 21:15:20 +0300 |
| commit | 4802b7b6c0babcb14e11e49e63d89d707f773b92 (patch) | |
| tree | f367e424acb868883e5ec6ca56d061a2f630ef8d | |
| parent | dfe1879a88d8ca5f1ec69928035d62fb564702fd (diff) | |
| download | linux-4802b7b6c0babcb14e11e49e63d89d707f773b92.tar.gz linux-4802b7b6c0babcb14e11e49e63d89d707f773b92.zip | |
drm/i915/dp: Require a HDMI sink for YCbCr output via PCON
DVI sinks can't deal with YCbCr. Make sure we have a HDMI sink connected
after the PCON before doing YCbCr 4:2:0 output.
Cc: Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patch.msgid.link/20260409101539.22032-7-ville.syrjala@linux.intel.com
Tested-by: Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
| -rw-r--r-- | drivers/gpu/drm/i915/display/intel_dp.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c index 99672341f43e..e80682834530 100644 --- a/drivers/gpu/drm/i915/display/intel_dp.c +++ b/drivers/gpu/drm/i915/display/intel_dp.c @@ -1349,10 +1349,15 @@ intel_dp_sink_format_valid(struct intel_connector *connector, const struct drm_display_mode *mode, enum intel_output_format sink_format) { + struct intel_dp *intel_dp = intel_attached_dp(connector); const struct drm_display_info *info = &connector->base.display_info; switch (sink_format) { case INTEL_OUTPUT_FORMAT_YCBCR420: + if (intel_dp->dfp.min_tmds_clock && + !intel_dp_has_hdmi_sink(intel_dp)) + return MODE_NO_420; + if (!connector->base.ycbcr_420_allowed || !drm_mode_is_420(info, mode)) return MODE_NO_420; |
