aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/drm_edid.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/drm_edid.c')
-rw-r--r--drivers/gpu/drm/drm_edid.c123
1 files changed, 63 insertions, 60 deletions
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index 1dbf3bc4c6a3..3bf999134bcc 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -632,27 +632,27 @@ static const struct drm_display_mode edid_cea_modes[] = {
632 DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_PVSYNC | 632 DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_PVSYNC |
633 DRM_MODE_FLAG_INTERLACE), 633 DRM_MODE_FLAG_INTERLACE),
634 .vrefresh = 60, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, }, 634 .vrefresh = 60, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
635 /* 6 - 1440x480i@60Hz */ 635 /* 6 - 720(1440)x480i@60Hz */
636 { DRM_MODE("1440x480i", DRM_MODE_TYPE_DRIVER, 27000, 1440, 1478, 636 { DRM_MODE("720x480i", DRM_MODE_TYPE_DRIVER, 13500, 720, 739,
637 1602, 1716, 0, 480, 488, 494, 525, 0, 637 801, 858, 0, 480, 488, 494, 525, 0,
638 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 638 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
639 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK), 639 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK),
640 .vrefresh = 60, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, }, 640 .vrefresh = 60, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, },
641 /* 7 - 1440x480i@60Hz */ 641 /* 7 - 720(1440)x480i@60Hz */
642 { DRM_MODE("1440x480i", DRM_MODE_TYPE_DRIVER, 27000, 1440, 1478, 642 { DRM_MODE("720x480i", DRM_MODE_TYPE_DRIVER, 13500, 720, 739,
643 1602, 1716, 0, 480, 488, 494, 525, 0, 643 801, 858, 0, 480, 488, 494, 525, 0,
644 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 644 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
645 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK), 645 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK),
646 .vrefresh = 60, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, }, 646 .vrefresh = 60, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
647 /* 8 - 1440x240@60Hz */ 647 /* 8 - 720(1440)x240@60Hz */
648 { DRM_MODE("1440x240", DRM_MODE_TYPE_DRIVER, 27000, 1440, 1478, 648 { DRM_MODE("720x240", DRM_MODE_TYPE_DRIVER, 13500, 720, 739,
649 1602, 1716, 0, 240, 244, 247, 262, 0, 649 801, 858, 0, 240, 244, 247, 262, 0,
650 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 650 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
651 DRM_MODE_FLAG_DBLCLK), 651 DRM_MODE_FLAG_DBLCLK),
652 .vrefresh = 60, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, }, 652 .vrefresh = 60, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, },
653 /* 9 - 1440x240@60Hz */ 653 /* 9 - 720(1440)x240@60Hz */
654 { DRM_MODE("1440x240", DRM_MODE_TYPE_DRIVER, 27000, 1440, 1478, 654 { DRM_MODE("720x240", DRM_MODE_TYPE_DRIVER, 13500, 720, 739,
655 1602, 1716, 0, 240, 244, 247, 262, 0, 655 801, 858, 0, 240, 244, 247, 262, 0,
656 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 656 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
657 DRM_MODE_FLAG_DBLCLK), 657 DRM_MODE_FLAG_DBLCLK),
658 .vrefresh = 60, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, }, 658 .vrefresh = 60, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
@@ -714,27 +714,27 @@ static const struct drm_display_mode edid_cea_modes[] = {
714 DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_PVSYNC | 714 DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_PVSYNC |
715 DRM_MODE_FLAG_INTERLACE), 715 DRM_MODE_FLAG_INTERLACE),
716 .vrefresh = 50, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, }, 716 .vrefresh = 50, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
717 /* 21 - 1440x576i@50Hz */ 717 /* 21 - 720(1440)x576i@50Hz */
718 { DRM_MODE("1440x576i", DRM_MODE_TYPE_DRIVER, 27000, 1440, 1464, 718 { DRM_MODE("720x576i", DRM_MODE_TYPE_DRIVER, 13500, 720, 732,
719 1590, 1728, 0, 576, 580, 586, 625, 0, 719 795, 864, 0, 576, 580, 586, 625, 0,
720 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 720 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
721 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK), 721 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK),
722 .vrefresh = 50, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, }, 722 .vrefresh = 50, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, },
723 /* 22 - 1440x576i@50Hz */ 723 /* 22 - 720(1440)x576i@50Hz */
724 { DRM_MODE("1440x576i", DRM_MODE_TYPE_DRIVER, 27000, 1440, 1464, 724 { DRM_MODE("720x576i", DRM_MODE_TYPE_DRIVER, 13500, 720, 732,
725 1590, 1728, 0, 576, 580, 586, 625, 0, 725 795, 864, 0, 576, 580, 586, 625, 0,
726 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 726 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
727 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK), 727 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK),
728 .vrefresh = 50, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, }, 728 .vrefresh = 50, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
729 /* 23 - 1440x288@50Hz */ 729 /* 23 - 720(1440)x288@50Hz */
730 { DRM_MODE("1440x288", DRM_MODE_TYPE_DRIVER, 27000, 1440, 1464, 730 { DRM_MODE("720x288", DRM_MODE_TYPE_DRIVER, 13500, 720, 732,
731 1590, 1728, 0, 288, 290, 293, 312, 0, 731 795, 864, 0, 288, 290, 293, 312, 0,
732 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 732 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
733 DRM_MODE_FLAG_DBLCLK), 733 DRM_MODE_FLAG_DBLCLK),
734 .vrefresh = 50, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, }, 734 .vrefresh = 50, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, },
735 /* 24 - 1440x288@50Hz */ 735 /* 24 - 720(1440)x288@50Hz */
736 { DRM_MODE("1440x288", DRM_MODE_TYPE_DRIVER, 27000, 1440, 1464, 736 { DRM_MODE("720x288", DRM_MODE_TYPE_DRIVER, 13500, 720, 732,
737 1590, 1728, 0, 288, 290, 293, 312, 0, 737 795, 864, 0, 288, 290, 293, 312, 0,
738 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 738 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
739 DRM_MODE_FLAG_DBLCLK), 739 DRM_MODE_FLAG_DBLCLK),
740 .vrefresh = 50, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, }, 740 .vrefresh = 50, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
@@ -837,17 +837,17 @@ static const struct drm_display_mode edid_cea_modes[] = {
837 796, 864, 0, 576, 581, 586, 625, 0, 837 796, 864, 0, 576, 581, 586, 625, 0,
838 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC), 838 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC),
839 .vrefresh = 100, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, }, 839 .vrefresh = 100, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
840 /* 44 - 1440x576i@100Hz */ 840 /* 44 - 720(1440)x576i@100Hz */
841 { DRM_MODE("1440x576", DRM_MODE_TYPE_DRIVER, 54000, 1440, 1464, 841 { DRM_MODE("720x576i", DRM_MODE_TYPE_DRIVER, 27000, 720, 732,
842 1590, 1728, 0, 576, 580, 586, 625, 0, 842 795, 864, 0, 576, 580, 586, 625, 0,
843 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 843 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
844 DRM_MODE_FLAG_DBLCLK), 844 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK),
845 .vrefresh = 100, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, }, 845 .vrefresh = 100, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, },
846 /* 45 - 1440x576i@100Hz */ 846 /* 45 - 720(1440)x576i@100Hz */
847 { DRM_MODE("1440x576", DRM_MODE_TYPE_DRIVER, 54000, 1440, 1464, 847 { DRM_MODE("720x576i", DRM_MODE_TYPE_DRIVER, 27000, 720, 732,
848 1590, 1728, 0, 576, 580, 586, 625, 0, 848 795, 864, 0, 576, 580, 586, 625, 0,
849 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 849 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
850 DRM_MODE_FLAG_DBLCLK), 850 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK),
851 .vrefresh = 100, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, }, 851 .vrefresh = 100, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
852 /* 46 - 1920x1080i@120Hz */ 852 /* 46 - 1920x1080i@120Hz */
853 { DRM_MODE("1920x1080i", DRM_MODE_TYPE_DRIVER, 148500, 1920, 2008, 853 { DRM_MODE("1920x1080i", DRM_MODE_TYPE_DRIVER, 148500, 1920, 2008,
@@ -870,15 +870,15 @@ static const struct drm_display_mode edid_cea_modes[] = {
870 798, 858, 0, 480, 489, 495, 525, 0, 870 798, 858, 0, 480, 489, 495, 525, 0,
871 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC), 871 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC),
872 .vrefresh = 120, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, }, 872 .vrefresh = 120, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
873 /* 50 - 1440x480i@120Hz */ 873 /* 50 - 720(1440)x480i@120Hz */
874 { DRM_MODE("1440x480i", DRM_MODE_TYPE_DRIVER, 54000, 1440, 1478, 874 { DRM_MODE("720x480i", DRM_MODE_TYPE_DRIVER, 27000, 720, 739,
875 1602, 1716, 0, 480, 488, 494, 525, 0, 875 801, 858, 0, 480, 488, 494, 525, 0,
876 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 876 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
877 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK), 877 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK),
878 .vrefresh = 120, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, }, 878 .vrefresh = 120, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, },
879 /* 51 - 1440x480i@120Hz */ 879 /* 51 - 720(1440)x480i@120Hz */
880 { DRM_MODE("1440x480i", DRM_MODE_TYPE_DRIVER, 54000, 1440, 1478, 880 { DRM_MODE("720x480i", DRM_MODE_TYPE_DRIVER, 27000, 720, 739,
881 1602, 1716, 0, 480, 488, 494, 525, 0, 881 801, 858, 0, 480, 488, 494, 525, 0,
882 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 882 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
883 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK), 883 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK),
884 .vrefresh = 120, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, }, 884 .vrefresh = 120, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
@@ -892,15 +892,15 @@ static const struct drm_display_mode edid_cea_modes[] = {
892 796, 864, 0, 576, 581, 586, 625, 0, 892 796, 864, 0, 576, 581, 586, 625, 0,
893 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC), 893 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC),
894 .vrefresh = 200, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, }, 894 .vrefresh = 200, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
895 /* 54 - 1440x576i@200Hz */ 895 /* 54 - 720(1440)x576i@200Hz */
896 { DRM_MODE("1440x576i", DRM_MODE_TYPE_DRIVER, 108000, 1440, 1464, 896 { DRM_MODE("720x576i", DRM_MODE_TYPE_DRIVER, 54000, 720, 732,
897 1590, 1728, 0, 576, 580, 586, 625, 0, 897 795, 864, 0, 576, 580, 586, 625, 0,
898 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 898 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
899 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK), 899 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK),
900 .vrefresh = 200, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, }, 900 .vrefresh = 200, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, },
901 /* 55 - 1440x576i@200Hz */ 901 /* 55 - 720(1440)x576i@200Hz */
902 { DRM_MODE("1440x576i", DRM_MODE_TYPE_DRIVER, 108000, 1440, 1464, 902 { DRM_MODE("720x576i", DRM_MODE_TYPE_DRIVER, 54000, 720, 732,
903 1590, 1728, 0, 576, 580, 586, 625, 0, 903 795, 864, 0, 576, 580, 586, 625, 0,
904 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 904 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
905 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK), 905 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK),
906 .vrefresh = 200, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, }, 906 .vrefresh = 200, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
@@ -914,15 +914,15 @@ static const struct drm_display_mode edid_cea_modes[] = {
914 798, 858, 0, 480, 489, 495, 525, 0, 914 798, 858, 0, 480, 489, 495, 525, 0,
915 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC), 915 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC),
916 .vrefresh = 240, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, }, 916 .vrefresh = 240, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
917 /* 58 - 1440x480i@240 */ 917 /* 58 - 720(1440)x480i@240 */
918 { DRM_MODE("1440x480i", DRM_MODE_TYPE_DRIVER, 108000, 1440, 1478, 918 { DRM_MODE("720x480i", DRM_MODE_TYPE_DRIVER, 54000, 720, 739,
919 1602, 1716, 0, 480, 488, 494, 525, 0, 919 801, 858, 0, 480, 488, 494, 525, 0,
920 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 920 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
921 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK), 921 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK),
922 .vrefresh = 240, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, }, 922 .vrefresh = 240, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, },
923 /* 59 - 1440x480i@240 */ 923 /* 59 - 720(1440)x480i@240 */
924 { DRM_MODE("1440x480i", DRM_MODE_TYPE_DRIVER, 108000, 1440, 1478, 924 { DRM_MODE("720x480i", DRM_MODE_TYPE_DRIVER, 54000, 720, 739,
925 1602, 1716, 0, 480, 488, 494, 525, 0, 925 801, 858, 0, 480, 488, 494, 525, 0,
926 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC | 926 DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC |
927 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK), 927 DRM_MODE_FLAG_INTERLACE | DRM_MODE_FLAG_DBLCLK),
928 .vrefresh = 240, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, }, 928 .vrefresh = 240, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
@@ -2103,7 +2103,8 @@ static int
2103add_inferred_modes(struct drm_connector *connector, struct edid *edid) 2103add_inferred_modes(struct drm_connector *connector, struct edid *edid)
2104{ 2104{
2105 struct detailed_mode_closure closure = { 2105 struct detailed_mode_closure closure = {
2106 connector, edid, 0, 0, 0 2106 .connector = connector,
2107 .edid = edid,
2107 }; 2108 };
2108 2109
2109 if (version_greater(edid, 1, 0)) 2110 if (version_greater(edid, 1, 0))
@@ -2169,7 +2170,8 @@ add_established_modes(struct drm_connector *connector, struct edid *edid)
2169 ((edid->established_timings.mfg_rsvd & 0x80) << 9); 2170 ((edid->established_timings.mfg_rsvd & 0x80) << 9);
2170 int i, modes = 0; 2171 int i, modes = 0;
2171 struct detailed_mode_closure closure = { 2172 struct detailed_mode_closure closure = {
2172 connector, edid, 0, 0, 0 2173 .connector = connector,
2174 .edid = edid,
2173 }; 2175 };
2174 2176
2175 for (i = 0; i <= EDID_EST_TIMINGS; i++) { 2177 for (i = 0; i <= EDID_EST_TIMINGS; i++) {
@@ -2227,7 +2229,8 @@ add_standard_modes(struct drm_connector *connector, struct edid *edid)
2227{ 2229{
2228 int i, modes = 0; 2230 int i, modes = 0;
2229 struct detailed_mode_closure closure = { 2231 struct detailed_mode_closure closure = {
2230 connector, edid, 0, 0, 0 2232 .connector = connector,
2233 .edid = edid,
2231 }; 2234 };
2232 2235
2233 for (i = 0; i < EDID_STD_TIMINGS; i++) { 2236 for (i = 0; i < EDID_STD_TIMINGS; i++) {
@@ -2313,7 +2316,8 @@ static int
2313add_cvt_modes(struct drm_connector *connector, struct edid *edid) 2316add_cvt_modes(struct drm_connector *connector, struct edid *edid)
2314{ 2317{
2315 struct detailed_mode_closure closure = { 2318 struct detailed_mode_closure closure = {
2316 connector, edid, 0, 0, 0 2319 .connector = connector,
2320 .edid = edid,
2317 }; 2321 };
2318 2322
2319 if (version_greater(edid, 1, 2)) 2323 if (version_greater(edid, 1, 2))
@@ -2357,11 +2361,10 @@ add_detailed_modes(struct drm_connector *connector, struct edid *edid,
2357 u32 quirks) 2361 u32 quirks)
2358{ 2362{
2359 struct detailed_mode_closure closure = { 2363 struct detailed_mode_closure closure = {
2360 connector, 2364 .connector = connector,
2361 edid, 2365 .edid = edid,
2362 1, 2366 .preferred = 1,
2363 quirks, 2367 .quirks = quirks,
2364 0
2365 }; 2368 };
2366 2369
2367 if (closure.preferred && !version_greater(edid, 1, 3)) 2370 if (closure.preferred && !version_greater(edid, 1, 3))
@@ -3433,10 +3436,10 @@ EXPORT_SYMBOL(drm_rgb_quant_range_selectable);
3433/** 3436/**
3434 * drm_assign_hdmi_deep_color_info - detect whether monitor supports 3437 * drm_assign_hdmi_deep_color_info - detect whether monitor supports
3435 * hdmi deep color modes and update drm_display_info if so. 3438 * hdmi deep color modes and update drm_display_info if so.
3436 *
3437 * @edid: monitor EDID information 3439 * @edid: monitor EDID information
3438 * @info: Updated with maximum supported deep color bpc and color format 3440 * @info: Updated with maximum supported deep color bpc and color format
3439 * if deep color supported. 3441 * if deep color supported.
3442 * @connector: DRM connector, used only for debug output
3440 * 3443 *
3441 * Parse the CEA extension according to CEA-861-B. 3444 * Parse the CEA extension according to CEA-861-B.
3442 * Return true if HDMI deep color supported, false if not or unknown. 3445 * Return true if HDMI deep color supported, false if not or unknown.