Thank you for your reply. I took your advice and tried it. None of it really surprises me.
The problem seems pretty simple. There is simply nothing in the EDID that mentions that it's a 4096x2160 monitor. From looking at the code, I don't see any possible code path that would allow it to somehow discover a mode higher than what the EDID reports. Even if I did hit the code path that infers new modes, the function valid_inferred_mode will reject any resolution that's higher. Is there a mechanism for discovering these higher modes that I'm missing?
I'm willing to work on a patch that would make this monitor "just work". What I'm interested in is what a patch for this would even look like. I assume this would need to be added as a "quirk" since the EDID is factually wrong.
Here's the relevant logs:
[ 52.333372] [drm:drm_detect_monitor_audio [drm]] Monitor has basic audio support
[ 52.333382] [drm:drm_add_display_info [drm]] non_desktop set to 0
[ 52.333395] [drm:drm_add_edid_modes [drm]] ELD monitor 31MU97
[ 52.333402] [drm:drm_add_edid_modes [drm]] ELD size 32, SAD count 1
[ 52.333410] [drm:drm_add_display_info [drm]] non_desktop set to 0
[ 52.333496] [drm:drm_helper_probe_single_connector_modes [drm_kms_helper]] [CONNECTOR:98:DP-4] probed modes :
[ 52.333506] [drm:drm_mode_debug_printmodeline [drm]] Modeline 95:"3840x2160" 60 533280 3840 3848 3992 4000 2160 2214 2219 2222 0x48 0x9
[ 52.333515] [drm:drm_mode_debug_printmodeline [drm]] Modeline 107:"3840x2160" 30 266640 3840 3848 3992 4000 2160 2214 2219 2222 0x40 0x9
[ 52.333523] [drm:drm_mode_debug_printmodeline [drm]] Modeline 114:"1920x1080" 60 148500 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x5
[ 52.333531] [drm:drm_mode_debug_printmodeline [drm]] Modeline 122:"1920x1080" 60 148500 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x5
[ 52.333539] [drm:drm_mode_debug_printmodeline [drm]] Modeline 126:"1920x1080" 60 148352 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x5
[ 52.333547] [drm:drm_mode_debug_printmodeline [drm]] Modeline 118:"1600x900" 60 108000 1600 1624 1704 1800 900 901 904 1000 0x40 0x5
[ 52.333555] [drm:drm_mode_debug_printmodeline [drm]] Modeline 116:"1280x1024" 60 108000 1280 1328 1440 1688 1024 1025 1028 1066 0x40 0x5
[ 52.333563] [drm:drm_mode_debug_printmodeline [drm]] Modeline 115:"1152x864" 60 81579 1152 1216 1336 1520 864 865 868 895 0x0 0x6
[ 52.333572] [drm:drm_mode_debug_printmodeline [drm]] Modeline 117:"1280x720" 60 74250 1280 1390 1430 1650 720 725 730 750 0x40 0x5
[ 52.333579] [drm:drm_mode_debug_printmodeline [drm]] Modeline 123:"1280x720" 60 74250 1280 1390 1430 1650 720 725 730 750 0x40 0x5
[ 52.333587] [drm:drm_mode_debug_printmodeline [drm]] Modeline 127:"1280x720" 60 74176 1280 1390 1430 1650 720 725 730 750 0x40 0x5
[ 52.333595] [drm:drm_mode_debug_printmodeline [drm]] Modeline 108:"1024x768" 60 65000 1024 1048 1184 1344 768 771 777 806 0x40 0xa
[ 52.333603] [drm:drm_mode_debug_printmodeline [drm]] Modeline 106:"800x600" 60 40000 800 840 968 1056 600 601 605 628 0x40 0x5
[ 52.333611] [drm:drm_mode_debug_printmodeline [drm]] Modeline 131:"720x480" 60 27027 720 736 798 858 480 489 495 525 0x40 0xa
[ 52.333619] [drm:drm_mode_debug_printmodeline [drm]] Modeline 124:"720x480" 60 27000 720 736 798 858 480 489 495 525 0x40 0xa
[ 52.333627] [drm:drm_mode_debug_printmodeline [drm]] Modeline 128:"640x480" 60 25200 640 656 752 800 480 490 492 525 0x40 0xa
[ 52.333635] [drm:drm_mode_debug_printmodeline [drm]] Modeline 97:"640x480" 60 25175 640 656 752 800 480 490 492 525 0x40 0xa
[ 52.333641] [drm:drm_mode_debug_printmodeline [drm]] Modeline 125:"640x480" 60 25175 640 656 752 800 480 490 492 525 0x40 0xa
Here's my parsed EDID:
header: 00 ff ff ff ff ff ff 00
vendor/product identification: 1e 6d e7 76 01 01 01 01 01 18
edid struct version/revision: 01 04
basic display parameters/features: b5 3c 22 78 9e
color characteristics: e9 d5 aa 50 34 b6 25 0e 50 54
established timings: 21 08 00
standard timing identification: 71 40 81 80 81 c0 a9 c0 d1 c0 01 01 01 01 01 01
detailed timing 0: 50 d0 00 a0 f0 70 3e 80 08 90 65 0c 6d 55 21 00 00 1a
detailed timing 1: 28 68 00 a0 f0 70 3e 80 08 90 65 0c 6d 55 21 00 00 1a
detailed timing 2: 00 00 00 fd 00 38 3d 1e 87 38 00 0a 20 20 20 20 20 20
detailed timing 3: 00 00 00 fc 00 33 31 4d 55 39 37 0a 20 20 20 20 20 20
extensions: 02
checksum: af
Monitor
Model name............... 31MU97
Manufacturer............. GSM
Product code............. 30439
Module serial number..... 16843009
Serial number............ n/a
Manufacture date......... 2014, ISO week 1
EDID revision............ 1.4
Input signal type........ Digital
VESA DFP 1.x supported... Yes
Display type............. Undefined
Screen size.............. 600 mm x 340 mm (27.2 in)
Power management......... Standby
Extension blocks......... 2
Color characteristics
Default color space...... sRGB
Display gamma............ 2.20
Red chromaticity......... Rx 0.667 - Ry 0.314
Green chromaticity....... Gx 0.205 - Gy 0.712
Blue chromaticity........ Bx 0.147 - By 0.056
White point (default).... Wx 0.313 - Wy 0.329
Timing characteristics
Horizontal scan range.... 30 - 135 kHz
Vertical scan range...... 56 - 61 Hz
Video bandwidth.......... 560 MHz
GTF standard............. Not Supported
Preferred timing......... Yes
Native/preferred timing.. 3840x2160p at 60Hz (16:9)
Modeline............... "3840x2160" 533.280 3840 3848 3992 4000 2160 2214 2219 2222 +hsync -vsync
Standard timings supported
640 x 480p @ 60Hz - IBM VGA
800 x 600p @ 60Hz - VESA
1024 x 768p @ 60Hz - VESA
1152 x 864p @ 60Hz - VESA STD
1280 x 1024p @ 60Hz - VESA STD
1280 x 720p @ 60Hz - VESA STD
1600 x 900p @ 60Hz - VESA STD
1920 x 1080p @ 60Hz - VESA STD
cea extension header: 02 03 12 71
data block collection: 45 10 04 03 01 00 23 09 07 07 83 01 00 00
detailed timing descriptor 000: 02 3a 80 18 71 38 2d 40 58 2c 45 00 b8 6f 21 00 00 1e
padding: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
checksum: 44
CEA-861 Information
Revision number.......... 3
IT underscan............. Not supported
Basic audio.............. Supported
YCbCr 4:4:4.............. Supported
YCbCr 4:2:2.............. Supported
Native formats........... 1
Detailed timing #1....... 1920x1080p at 60Hz (16:9)
Modeline............... "1920x1080" 148.500 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
CE video identifiers (VICs) - timing/formats supported
CEA Mode 16: 1920 x 1080p @ 60Hz
CEA Mode 04: 1280 x 720p @ 60Hz
CEA Mode 03: 720 x 480p @ 60Hz
CEA Mode 01: 640 x 480p @ 60Hz
CEA Mode 00: 0 x 0i @ 0Hz
CE audio data (formats supported)
LPCM 2-channel, 16/20/24 bit depths at 32/44.1/48 kHz
CEA speaker allocation data
Channel configuration.... 2.0
Front left/right......... Yes
Front LFE................ No
Front center............. No
Rear left/right.......... No
Rear center.............. No
Front left/right center.. No
Rear left/right center... No
Front left/right wide.... No
Front left/right high.... No
Top center............... No
Front center high........ No
I'm willing to write a patch, but I'm wondering what it should look like.
On Mon, Sep 24, 2018 at 1:49 AM Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx> wrote:
On Sat, 22 Sep 2018, Brian Vincent <brainn@xxxxxxxxx> wrote:
> I have a LG 31MU97-B monitor. My understanding is that EDID does not have
> a way to report itself as a 4096x2160 monitor, so it reports itself as a
> 3840x2160 monitor. The mode that it actually supports for it's native
> resolution that I've been using looks like this:
A dmesg with drm.debug=14 might prove useful in figuring out what's
actually going on. Without the user provided mode.
BR,
Jani.
--
Jani Nikula, Intel Open Source Graphics Center
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel