Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FKMS detects 4k60/4kp60 but KMS does not #4097

Closed
alanbork opened this issue Jan 25, 2021 · 5 comments
Closed

FKMS detects 4k60/4kp60 but KMS does not #4097

alanbork opened this issue Jan 25, 2021 · 5 comments

Comments

@alanbork
Copy link

My pi4 can display 4k60 on my TV (sony xbr800D), when configured under FKMS. But when I switch to KMS it maxes out at 4K30.

Linux raspberrypi 5.10.10-v7l+ raspberrypi/firmware#1397 SMP Mon Jan 25 18:42:27 GMT 2021 armv7l GNU/Linux
rpi-updated to 8c2ba64b27a4b6a1dfcd114203c6309f766e2ef4
(same problem with 039088f7d929b0d1cc49e8d2012df0652f908518)

config.txt:
[pi4]
#dtoverlay=vc4-fkms-v3d
dtoverlay=vc4-kms-v3d
max_framebuffers=1
hdmi_force_hotplug=1
hdmi_group=1
hdmi_mode=4
hdmi_enable_4kp60=1

root@raspberrypi:~# edidparser edid
Enabling fuzzy format match...
Parsing edid...
HDMI:EDID version 1.3, 1 extensions, screen size 95x54 cm
HDMI:EDID features - videodef 0x80 !standby !suspend !active off; colour encoding:RGB444|YCbCr422; sRGB is not default colourspace; preferred format is native; does not support GTF
HDMI:EDID found monitor name descriptor tag 0xfc
HDMI:EDID monitor name is SONY_TV___00
HDMI:EDID found monitor range descriptor tag 0xfd
HDMI:EDID monitor range offsets: V min=0, V max=0, H min=0, H max=0
HDMI:EDID monitor range: vertical is 23-62 Hz, horizontal is 14-136 kHz, max pixel clock is 600 MHz
HDMI:EDID monitor range does not support GTF
HDMI:EDID found preferred CEA detail timing format: 3840x2160p @ 60 Hz (97)
HDMI:EDID found CEA detail timing format: 1920x1080p @ 60 Hz (16)
HDMI:EDID established timing I/II bytes are 21 08 00
HDMI:EDID found DMT format: code 4, 640x480p @ 60 Hz in established timing I/II
HDMI:EDID found DMT format: code 9, 800x600p @ 60 Hz in established timing I/II
HDMI:EDID found DMT format: code 16, 1024x768p @ 60 Hz in established timing I/II
HDMI:EDID standard timings block x 8: 0x8180 A9C0 714F B300 0101 0101 0101 0101
HDMI:EDID found DMT format: code 35, 1280x1024p @ 60 Hz (5:4) in standard timing 0
HDMI:EDID found DMT format: code 83, 1600x900p @ 60 Hz (16:9) in standard timing 1
HDMI:EDID found DMT format: code 21, 1152x864p @ 75 Hz (4:3) in standard timing 2
HDMI:EDID found DMT format: code 58, 1680x1050p @ 60 Hz (16:10) in standard timing 3
HDMI:EDID parsing v3 CEA extension 0
HDMI:EDID monitor support - underscan IT formats:yes, basic audio:yes, yuv444:yes, yuv422:yes, #native DTD:0
HDMI:EDID found CEA detail timing format: 1280x720p @ 60 Hz (4)
HDMI:EDID found CEA format: code 97, 3840x2160p @ 60Hz
HDMI:EDID found CEA format: code 96, 3840x2160p @ 50Hz
HDMI:EDID found CEA format: code 93, 3840x2160p @ 24Hz
HDMI:EDID found CEA format: code 94, 3840x2160p @ 25Hz
HDMI:EDID found CEA format: code 95, 3840x2160p @ 30Hz
HDMI:EDID found CEA format: code 98, 4096x2160p @ 24Hz
HDMI:EDID found CEA format: code 31, 1920x1080p @ 50Hz
HDMI:EDID found CEA format: code 16, 1920x1080p @ 60Hz
HDMI:EDID found CEA format: code 20, 1920x1080i @ 50Hz
HDMI:EDID found CEA format: code 5, 1920x1080i @ 60Hz
HDMI:EDID found CEA format: code 19, 1280x720p @ 50Hz
HDMI:EDID found CEA format: code 4, 1280x720p @ 60Hz
HDMI:EDID found CEA format: code 32, 1920x1080p @ 24Hz
HDMI:EDID found CEA format: code 34, 1920x1080p @ 30Hz
HDMI:EDID found CEA format: code 60, 1280x720p @ 24Hz
HDMI:EDID found CEA format: code 62, 1280x720p @ 30Hz
HDMI:EDID found CEA format: code 18, 720x576p @ 50Hz
HDMI:EDID found CEA format: code 22, 1440x576i @ 50Hz
HDMI:EDID found CEA format: code 3, 720x480p @ 60Hz
HDMI:EDID found CEA format: code 7, 1440x480i @ 60Hz
HDMI:EDID found CEA format: code 17, 720x576p @ 50Hz
HDMI:EDID found CEA format: code 21, 1440x576i @ 50Hz
HDMI:EDID found CEA format: code 2, 720x480p @ 60Hz
HDMI:EDID found CEA format: code 6, 1440x480i @ 60Hz
HDMI:EDID found CEA format: code 1, 640x480p @ 60Hz
HDMI:EDID found CEA format: code 101, 4096x2160p @ 50Hz
HDMI:EDID found CEA format: code 102, 4096x2160p @ 60Hz
HDMI:EDID found audio format 6 channels PCM, sample rate: 32|44|48|88|96|176|192 kHz, sample size: 16|20|24 bits
HDMI:EDID found audio format 6 channels AC3, sample rate: 32|44|48 kHz, bitrate: 640 kbps
HDMI:EDID found audio format 6 channels DTS, sample rate: 32|44|48 kHz, bitrate: 1504 kbps
HDMI:EDID found audio format 8 channels Dobly Digital+, sample rate: 48 kHz, codec define: 0
HDMI:EDID found HDMI VSDB length 14
HDMI:EDID HDMI VSDB has physical address 3.0.0.0
HDMI:EDID HDMI VSDB supports AI:yes, dual link DVI:no
HDMI:EDID HDMI VSDB deep colour support - 48-bit:no 36-bit:yes 30-bit:yes DC_yuv444:yes
HDMI:EDID HDMI VSDB max TMDS clock 300 MHz
HDMI:EDID HDMI VSDB content type support: game|cinema|photo|text
HDMI:EDID HDMI VSDB supports extended resolutions 1,2,3,4
HDMI:EDID ignoring non HDMI VSDB with IEEE reg 0xc45dd8
HDMI:EDID found Video Capability DB length 2
HDMI:EDID video capability: CE:3 IT:2 PT:0 QS:3
HDMI:EDID extended data block tag 0x05 length 3 not supported
HDMI:EDID extended data block YCbCr420CapMap - length 5
HDMI:EDID extended data block tag 0x06 length 3 not supported
HDMI:EDID filtering formats with pixel clock unlimited MHz or h. blanking unlimited
HDMI:EDID best score mode initialised to CEA (1) 640x480p @ 60 Hz with pixel clock -1225844556 MHz (score 25)
HDMI:EDID best score mode is now CEA (1) 640x480p @ 60 Hz with pixel clock 25 MHz (score 61864)
HDMI:EDID best score mode is now CEA (2) 720x480p @ 60 Hz with pixel clock 27 MHz (score 66472)
HDMI:EDID CEA mode (3) 720x480p @ 60 Hz with pixel clock 27 MHz has a score of 66472
HDMI:EDID best score mode is now CEA (4) 1280x720p @ 60 Hz with pixel clock 74 MHz (score 135592)
HDMI:EDID DMT mode (4) 640x480p @ 60 Hz with pixel clock 25 MHz has a score of 18432
HDMI:EDID best score mode is now CEA (5) 1920x1080i @ 60 Hz with pixel clock 74 MHz (score 149416)
HDMI:EDID CEA mode (6) 1440x480i @ 60 Hz with pixel clock 27 MHz has a score of 45736
HDMI:EDID CEA mode (7) 1440x480i @ 60 Hz with pixel clock 27 MHz has a score of 45736
HDMI:EDID DMT mode (9) 800x600p @ 60 Hz with pixel clock 40 MHz has a score of 28800
HDMI:EDID best score mode is now CEA (16) 1920x1080p @ 60 Hz with pixel clock 148 MHz (score 273832)
HDMI:EDID DMT mode (16) 1024x768p @ 60 Hz with pixel clock 65 MHz has a score of 47185
HDMI:EDID CEA mode (17) 720x576p @ 50 Hz with pixel clock 27 MHz has a score of 66472
HDMI:EDID CEA mode (18) 720x576p @ 50 Hz with pixel clock 27 MHz has a score of 66472
HDMI:EDID CEA mode (19) 1280x720p @ 50 Hz with pixel clock 74 MHz has a score of 117160
HDMI:EDID CEA mode (20) 1920x1080i @ 50 Hz with pixel clock 74 MHz has a score of 128680
HDMI:EDID CEA mode (21) 1440x576i @ 50 Hz with pixel clock 27 MHz has a score of 45736
HDMI:EDID DMT mode (21) 1152x864p @ 75 Hz with pixel clock 108 MHz has a score of 43662
HDMI:EDID CEA mode (22) 1440x576i @ 50 Hz with pixel clock 27 MHz has a score of 45736
HDMI:EDID CEA mode (31) 1920x1080p @ 50 Hz with pixel clock 148 MHz has a score of 232360
HDMI:EDID CEA mode (32) 1920x1080p @ 24 Hz with pixel clock 74 MHz has a score of 124532
HDMI:EDID CEA mode (34) 1920x1080p @ 30 Hz with pixel clock 74 MHz has a score of 149416
HDMI:EDID DMT mode (35) 1280x1024p @ 60 Hz with pixel clock 108 MHz has a score of 103643
HDMI:EDID DMT mode (58) 1680x1050p @ 60 Hz with pixel clock 146 MHz has a score of 130840
HDMI:EDID CEA mode (60) 1280x720p @ 24 Hz with pixel clock 59 MHz has a score of 69236
HDMI:EDID CEA mode (62) 1280x720p @ 30 Hz with pixel clock 74 MHz has a score of 80296
HDMI:EDID DMT mode (83) 1600x900p @ 60 Hz with pixel clock 108 MHz has a score of 111400
HDMI:EDID best score mode is now CEA (93) 3840x2160p @ 24 Hz with pixel clock 297 MHz (score 423130)
HDMI:EDID best score mode is now CEA (94) 3840x2160p @ 25 Hz with pixel clock 297 MHz (score 439720)
HDMI:EDID best score mode is now CEA (95) 3840x2160p @ 30 Hz with pixel clock 297 MHz (score 522664)
HDMI:EDID CEA mode (96) 3840x2160p @ 50 Hz with pixel clock 594 MHz has a score of 356776
HDMI:EDID best score mode is now CEA (97) 3840x2160p @ 60 Hz with pixel clock 594 MHz (score 5622196)
HDMI:EDID CEA mode (98) 4096x2160p @ 24 Hz with pixel clock 297 MHz has a score of 224065
HDMI:EDID CEA mode (101) 4096x2160p @ 50 Hz with pixel clock 594 MHz has a score of 190888
HDMI:EDID CEA mode (102) 4096x2160p @ 60 Hz with pixel clock 594 MHz has a score of 224065
HDMI0:EDID preferred mode remained as CEA (97) 3840x2160p @ 60 Hz with pixel clock 594 MHz
HDMI:EDID has HDMI support and audio support

modes under fkms:

root@raspberrypi:~# modetest | grep '#'
#0 3840x2160 60.00 3840 4016 4104 4400 2160 2168 2178 2250 594000 flags: phsync, pvsync; type: preferred, driver
raspberrypi/firmware#1 4096x2160 60.00 4096 4184 4272 4400 2160 2168 2178 2250 594000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#2 4096x2160 59.94 4096 4184 4272 4400 2160 2168 2178 2250 593407 flags: phsync, pvsync; type: driver
raspberrypi/firmware#3 4096x2160 50.00 4096 5064 5152 5280 2160 2168 2178 2250 594000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#4 4096x2160 24.00 4096 5116 5204 5500 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#5 4096x2160 23.98 4096 5116 5204 5500 2160 2168 2178 2250 296703 flags: phsync, pvsync; type: driver
raspberrypi/firmware#6 3840x2160 59.94 3840 4016 4104 4400 2160 2168 2178 2250 593407 flags: phsync, pvsync; type: driver
raspberrypi/firmware#7 3840x2160 50.00 3840 4896 4984 5280 2160 2168 2178 2250 594000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#8 3840x2160 30.00 3840 4016 4104 4400 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#9 3840x2160 29.97 3840 4016 4104 4400 2160 2168 2178 2250 296703 flags: phsync, pvsync; type: driver
raspberrypi/firmware#10 3840x2160 25.00 3840 4896 4984 5280 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#11 3840x2160 24.00 3840 5116 5204 5500 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#12 3840x2160 23.98 3840 5116 5204 5500 2160 2168 2178 2250 296703 flags: phsync, pvsync; type: driver
raspberrypi/firmware#13 1920x1080 60.00 1920 2008 2052 2200 1080 1084 1089 1125 148500 flags: phsync, pvsync; type: driver
raspberrypi/firmware#14 1920x1080 59.94 1920 2008 2052 2200 1080 1084 1089 1125 148352 flags: phsync, pvsync; type: driver
raspberrypi/firmware#15 1920x1080i 30.00 1920 2008 2052 2200 1080 1084 1094 1125 74250 flags: phsync, pvsync, interlace; type: driver
raspberrypi/firmware#16 1920x1080i 29.97 1920 2008 2052 2200 1080 1084 1094 1125 74176 flags: phsync, pvsync, interlace; type: driver
raspberrypi/firmware#17 1920x1080 50.00 1920 2448 2492 2640 1080 1084 1089 1125 148500 flags: phsync, pvsync; type: driver
raspberrypi/firmware#18 1920x1080i 25.00 1920 2448 2492 2640 1080 1084 1094 1125 74250 flags: phsync, pvsync, interlace; type: driver
raspberrypi/firmware#19 1920x1080 30.00 1920 2008 2052 2200 1080 1084 1089 1125 74250 flags: phsync, pvsync; type: driver
raspberrypi/firmware#20 1920x1080 29.97 1920 2008 2052 2200 1080 1084 1089 1125 74176 flags: phsync, pvsync; type: driver
raspberrypi/firmware#21 1920x1080 24.00 1920 2558 2602 2750 1080 1084 1089 1125 74250 flags: phsync, pvsync; type: driver
raspberrypi/firmware#22 1920x1080 23.98 1920 2558 2602 2750 1080 1084 1089 1125 74176 flags: phsync, pvsync; type: driver
raspberrypi/firmware#23 1680x1050 59.88 1680 1728 1760 1840 1050 1053 1059 1080 119000 flags: phsync, nvsync; type: driver
raspberrypi/firmware#24 1600x900 60.00 1600 1624 1704 1800 900 901 904 1000 108000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#25 1280x1024 60.02 1280 1328 1440 1688 1024 1025 1028 1066 108000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#26 1152x864 75.00 1152 1216 1344 1600 864 865 868 900 108000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#27 1280x720 60.00 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: userdef, driver
raspberrypi/firmware#28 1280x720 59.94 1280 1390 1430 1650 720 725 730 750 74176 flags: phsync, pvsync; type: driver
raspberrypi/firmware#29 1280x720 50.00 1280 1720 1760 1980 720 725 730 750 74250 flags: phsync, pvsync; type: driver
raspberrypi/firmware#30 1280x720 30.00 1280 3040 3080 3300 720 725 730 750 74250 flags: phsync, pvsync; type: driver
raspberrypi/firmware#31 1280x720 29.97 1280 3040 3080 3300 720 725 730 750 74176 flags: phsync, pvsync; type: driver
raspberrypi/firmware#32 1280x720 24.00 1280 3040 3080 3300 720 725 730 750 59400 flags: phsync, pvsync; type: driver
raspberrypi/firmware#33 1280x720 23.98 1280 3040 3080 3300 720 725 730 750 59341 flags: phsync, pvsync; type: driver
raspberrypi/firmware#34 1024x768 60.00 1024 1048 1184 1344 768 771 777 806 65000 flags: nhsync, nvsync; type: driver
raspberrypi/firmware#35 800x600 60.32 800 840 968 1056 600 601 605 628 40000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#36 720x576 50.00 720 732 796 864 576 581 586 625 27000 flags: nhsync, nvsync; type: driver
raspberrypi/firmware#37 720x576i 25.00 720 732 795 864 576 580 586 625 13500 flags: nhsync, nvsync, interlace, dblclk; type: driver
raspberrypi/firmware#38 720x480 60.00 720 736 798 858 480 489 495 525 27027 flags: nhsync, nvsync; type: driver
raspberrypi/firmware#39 720x480 59.94 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver
raspberrypi/firmware#40 720x480i 30.00 720 739 801 858 480 488 494 525 13514 flags: nhsync, nvsync, interlace, dblclk; type: driver
raspberrypi/firmware#41 720x480i 29.97 720 739 801 858 480 488 494 525 13500 flags: nhsync, nvsync, interlace, dblclk; type: driver
raspberrypi/firmware#42 640x480 60.00 640 656 752 800 480 490 492 525 25200 flags: nhsync, nvsync; type: driver
raspberrypi/firmware#43 640x480 59.94 640 656 752 800 480 490 492 525 25175 flags: nhsync, nvsync; type: driver
#0 1280x720 60.00 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: userdef, driver

under kms:

root@raspberrypi:~# modetest | grep '#'
#0 4096x2160 24.00 4096 5116 5204 5500 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#1 4096x2160 23.98 4096 5116 5204 5500 2160 2168 2178 2250 296703 flags: phsync, pvsync; type: driver
raspberrypi/firmware#2 3840x2160 30.00 3840 4016 4104 4400 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#3 3840x2160 29.97 3840 4016 4104 4400 2160 2168 2178 2250 296703 flags: phsync, pvsync; type: driver
raspberrypi/firmware#4 3840x2160 25.00 3840 4896 4984 5280 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#5 3840x2160 24.00 3840 5116 5204 5500 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#6 3840x2160 23.98 3840 5116 5204 5500 2160 2168 2178 2250 296703 flags: phsync, pvsync; type: driver
raspberrypi/firmware#7 1920x1080 60.00 1920 2008 2052 2200 1080 1084 1089 1125 148500 flags: phsync, pvsync; type: driver
raspberrypi/firmware#8 1920x1080 59.94 1920 2008 2052 2200 1080 1084 1089 1125 148352 flags: phsync, pvsync; type: driver
raspberrypi/firmware#9 1920x1080i 30.00 1920 2008 2052 2200 1080 1084 1094 1125 74250 flags: phsync, pvsync, interlace; type: driver
raspberrypi/firmware#10 1920x1080i 29.97 1920 2008 2052 2200 1080 1084 1094 1125 74176 flags: phsync, pvsync, interlace; type: driver
raspberrypi/firmware#11 1920x1080 50.00 1920 2448 2492 2640 1080 1084 1089 1125 148500 flags: phsync, pvsync; type: driver
raspberrypi/firmware#12 1920x1080i 25.00 1920 2448 2492 2640 1080 1084 1094 1125 74250 flags: phsync, pvsync, interlace; type: driver
raspberrypi/firmware#13 1920x1080 30.00 1920 2008 2052 2200 1080 1084 1089 1125 74250 flags: phsync, pvsync; type: driver
raspberrypi/firmware#14 1920x1080 29.97 1920 2008 2052 2200 1080 1084 1089 1125 74176 flags: phsync, pvsync; type: driver
raspberrypi/firmware#15 1920x1080 24.00 1920 2558 2602 2750 1080 1084 1089 1125 74250 flags: phsync, pvsync; type: driver
raspberrypi/firmware#16 1920x1080 23.98 1920 2558 2602 2750 1080 1084 1089 1125 74176 flags: phsync, pvsync; type: driver
raspberrypi/firmware#17 1680x1050 59.88 1680 1728 1760 1840 1050 1053 1059 1080 119000 flags: phsync, nvsync; type: driver
raspberrypi/firmware#18 1600x900 60.00 1600 1624 1704 1800 900 901 904 1000 108000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#19 1280x1024 60.02 1280 1328 1440 1688 1024 1025 1028 1066 108000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#20 1152x864 75.00 1152 1216 1344 1600 864 865 868 900 108000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#21 1280x720 60.00 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: userdef, driver
raspberrypi/firmware#22 1280x720 59.94 1280 1390 1430 1650 720 725 730 750 74176 flags: phsync, pvsync; type: driver
raspberrypi/firmware#23 1280x720 50.00 1280 1720 1760 1980 720 725 730 750 74250 flags: phsync, pvsync; type: driver
raspberrypi/firmware#24 1280x720 30.00 1280 3040 3080 3300 720 725 730 750 74250 flags: phsync, pvsync; type: driver
raspberrypi/firmware#25 1280x720 29.97 1280 3040 3080 3300 720 725 730 750 74176 flags: phsync, pvsync; type: driver
raspberrypi/firmware#26 1280x720 24.00 1280 3040 3080 3300 720 725 730 750 59400 flags: phsync, pvsync; type: driver
raspberrypi/firmware#27 1280x720 23.98 1280 3040 3080 3300 720 725 730 750 59341 flags: phsync, pvsync; type: driver
raspberrypi/firmware#28 1024x768 60.00 1024 1048 1184 1344 768 771 777 806 65000 flags: nhsync, nvsync; type: driver
raspberrypi/firmware#29 800x600 60.32 800 840 968 1056 600 601 605 628 40000 flags: phsync, pvsync; type: driver
raspberrypi/firmware#30 720x576 50.00 720 732 796 864 576 581 586 625 27000 flags: nhsync, nvsync; type: driver
raspberrypi/firmware#31 720x480 60.00 720 736 798 858 480 489 495 525 27027 flags: nhsync, nvsync; type: driver
raspberrypi/firmware#32 720x480 59.94 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver
raspberrypi/firmware#33 640x480 60.00 640 656 752 800 480 490 492 525 25200 flags: nhsync, nvsync; type: driver
raspberrypi/firmware#34 640x480 59.94 640 656 752 800 480 490 492 525 25175 flags: nhsync, nvsync; type: driver
#0 nan 0 0 0 0 0 0 0 0 0 flags: ; type:
#0 nan 0 0 0 0 0 0 0 0 0 flags: ; type:
#0 nan 0 0 0 0 0 0 0 0 0 flags: ; type:
#0 1280x720 60.00 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: userdef, driver
#0 nan 0 0 0 0 0 0 0 0 0 flags: ; type:
#0 nan 0 0 0 0 0 0 0 0 0 flags: ; type:

and indeed if I force mode 97 via config.txt it doesn't work.

@6by9
Copy link
Contributor

6by9 commented Jan 26, 2021

Linux kernel, not firmware.

4k60 requires HDMI2.0, and with that scrambling, altered TMDS clocking, SCDC (Status & Control Data Channel) and a number of other things.
It's in progress, and fairly near the top of the list, but not there yet. That's why the max pixel clock is clamped at 340MHz of HDMI1.4 - https://github.com/raspberrypi/linux/blob/rpi-5.10.y/drivers/gpu/drm/vc4/vc4_hdmi.c#L2617

@pelwell pelwell transferred this issue from raspberrypi/firmware Jan 26, 2021
@alanbork
Copy link
Author

Kernel as in mainline kernel? or RPI specific?

It sure would be nice if that had been documented somewhere so I didn't have to waste my time debugging and eventually submitting a bug report here. I'm not allergic to reading; but for all my browsing I've never seen a document listing the tradeoffs of using kms vs fkms on the Pi, just the constant push on the forums to switch from FKMS to KMS.

@6by9
Copy link
Contributor

6by9 commented Jan 27, 2021

Maxime Ripard is working on mainline kernel and getting the KMS driver working there. Follow dri-devel and you'd see the patches.

We're backporting his work frequently (often before being merged upstream), and also working on parts that are proving difficult to him as Pi Towers often have either additional information we can't release, or can try replicating things from the firmware more easily. Those patches often appear in our tree first, and then Maxime will pick them up, clean up where necessary, and then upstream them.
So the Pi specific 5.10 (or possibly 5.11 if you want really bleeding edge) kernel is generally the best bet.

Whilst you may read documentation, the vast majority of people seem not to. Particularly on something that is still under heavy development it generally isn't worthwhile trying to keep anything updated.

@pelwell pelwell changed the title FKMS detects 4k60 but KMS does not FKMS detects 4k60/4kp60 but KMS does not Jan 27, 2021
@pelwell
Copy link
Contributor

pelwell commented Jan 27, 2021

And now, thanks to google indexing, this issue becomes documentation. The title has been tweaked to help others find it.

@alanbork
Copy link
Author

alanbork commented Jul 3, 2021

problem has been fixed both kms and fkms can detect 4k60p now.

@alanbork alanbork closed this as completed Jul 3, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants