mirror of
https://github.com/torvalds/linux.git
synced 2026-09-22 12:44:03 +02:00
drm/amd/display: Propagate HDMI RGB quantization selectability
DC uses dc_edid_caps.qs_bit when constructing the HDMI AVI InfoFrame
quantization-range field. Although DRM parses the sink capability into
drm_display_info, DM never copies it into the DC EDID capabilities. The
field therefore remains zero and the AVI quantization range stays at its
default value.
Copy rgb_quant_range_selectable for HDMI sinks and extend the existing
EDID-capability KUnit test to cover it.
Fixes: 6eb4c13a38 ("drm/amd/display: Support "Broadcast RGB" drm property")
Signed-off-by: Satyajit Roy <sroy14@alum.utk.edu>
Reviewed-by: Alex Hung <alex.hung@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 892659399f64642e33072562a11ec1b2e7bd2263)
Cc: stable@vger.kernel.org
This commit is contained in:
parent
829157e762
commit
bdcd0411d7
|
|
@ -200,6 +200,7 @@ enum dc_edid_status dm_helpers_parse_edid_caps(
|
|||
edid_caps->edid_hdmi = connector->display_info.is_hdmi;
|
||||
|
||||
if (edid_caps->edid_hdmi) {
|
||||
edid_caps->qs_bit = connector->display_info.rgb_quant_range_selectable;
|
||||
populate_hdmi_info_from_connector(link->dc->config.enable_frl, &connector->display_info.hdmi, edid_caps);
|
||||
drm_dbg_driver(connector->dev, "%s: HDMI_FRL [%s] max_frl_rate %d\n", __func__, connector->name, edid_caps->max_frl_rate);
|
||||
if (edid_caps->frl_dsc_support)
|
||||
|
|
|
|||
|
|
@ -358,12 +358,14 @@ static void dm_test_parse_edid_caps_hdmi_frl(struct kunit *test)
|
|||
|
||||
/* Drive the HDMI/FRL branch */
|
||||
connector->display_info.is_hdmi = true;
|
||||
connector->display_info.rgb_quant_range_selectable = true;
|
||||
connector->display_info.hdmi.scdc.supported = true;
|
||||
connector->display_info.hdmi.max_lanes = 4;
|
||||
connector->display_info.hdmi.max_frl_rate_per_lane = 12;
|
||||
|
||||
KUNIT_EXPECT_EQ(test, dm_helpers_parse_edid_caps(link, dc_edid, edid_caps), EDID_OK);
|
||||
KUNIT_EXPECT_TRUE(test, edid_caps->edid_hdmi);
|
||||
KUNIT_EXPECT_EQ(test, edid_caps->qs_bit, 1);
|
||||
KUNIT_EXPECT_TRUE(test, edid_caps->scdc_present);
|
||||
/* max_lanes 4 + max_frl_rate_per_lane 12 -> rate index 6 */
|
||||
KUNIT_EXPECT_EQ(test, edid_caps->max_frl_rate, 6);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user