“How to display on HDMI”的版本间的差异

来自百问网嵌入式Linux wiki
 
(未显示同一用户的6个中间版本)
第1行: 第1行:
 
==Article purpose==
 
==Article purpose==
This article aims to specify what is displayed on an HDMI<sup>&reg;</sup><ref>[https://www.hdmi.org HDMI (High-Definition Multimedia Interface)]</ref> monitor (or TV) connected, through an HDMI cable, to a STMicroelectronics board, in different use cases explained below.
+
本文旨在指定在HDMI <sup>&reg;</sup><ref>[https://www.hdmi.org HDMI (High-Definition Multimedia Interface)]</ref> 监视器(或电视)上显示的内容 通过HDMI电缆连接到STMicroelectronics板上(在以下说明的不同用例中)。
  
This article also explains how to get the video modes (resolutions and refresh frequencies) of the HDMI monitor (or TV) that are supported by the device, how to test them, and finally how to select one.
+
本文还介绍了如何获取设备支持的HDMI监视器(或电视)的视频模式(分辨率和刷新频率),如何对其进行测试以及最终如何选择。
  
 
==Prerequisites==
 
==Prerequisites==
Obviously, it is mandatory that your STMicroelectronics board has an HDMI connector, which is the case for: {{UpdateNeededForNewBoard|Point to the HDMI connector (if any) of the new board}}
+
显然,STMicroelectronics板必须具有HDMI连接器,这是以下情况的情况:
 +
{{UpdateNeededForNewBoard|Point to the HDMI connector (if any) of the new board}}
 
:* the [[STM32MP157X-DKX - hardware_description#MB1272-CN9|STM32MP157x-DKx Discovery kit (CN9 HDMI connector)]]
 
:* the [[STM32MP157X-DKX - hardware_description#MB1272-CN9|STM32MP157x-DKx Discovery kit (CN9 HDMI connector)]]
 
[[File: STM32MP157x-DKx_HDMI.png|thumb|400px|center|link=|HDMI cable connected on Discovery kit <br> '''STM32MP157C-DK2''' shown here (without the MB1407 daughterboard DSI display)]]
 
[[File: STM32MP157x-DKx_HDMI.png|thumb|400px|center|link=|HDMI cable connected on Discovery kit <br> '''STM32MP157C-DK2''' shown here (without the MB1407 daughterboard DSI display)]]
  
An HDMI cable and an HDMI monitor (or TV) are also needed.
+
还需要HDMI电缆和HDMI监视器(或电视)。
  
 
==Use cases==
 
==Use cases==
The table below shows the different use cases that involve both the DSI display and the HDMI monitor.
+
下表显示了涉及DSI显示器和HDMI监视器的不同用例。
  
 
{| class="st-table" style="text-align:center;"
 
{| class="st-table" style="text-align:center;"
第36行: 第37行:
  
  
The following statements explain the use cases summarized above:
+
以下语句解释了以上总结的用例:
* The [[U-Boot overview | U-Boot]] graphical console ("ST life.augmented" picture) is never displayed on the HDMI monitor. This console is displayed on the DSI display (if any on the board).
+
* [[U-Boot overview | U-Boot]]图形控制台(“ ST life.augmented”图片)永远不会显示在HDMI监视器上。 此控制台将显示在DSI显示屏上(如果板上有)。
  
* If the board has both a DSI display and an HDMI monitor, the Wayland background layer is only displayed on one of these displays (see the "rules" below).
+
* 如果该板同时具有DSI显示器和HDMI监视器,则Wayland背景层仅显示在这些显示器之一上(请参阅下面的“规则”)。
  
* [[#HDMI-unplugged|'''HDMI unplugged''']]: if no HDMI monitor is connected to the board before the board starts, and if a DSI display is connected to the board, the Wayland background layer is displayed on the DSI display.
+
* [[#HDMI-unplugged|'''HDMI unplugged''']]: 如果在板卡启动之前没有HDMI监视器连接到板上,并且如果DSI显示器连接到板上,则Wayland背景层显示在 DSI显示。
  
* [[#HDMI-cold-plug|'''HDMI cold-plug''']]: if an HDMI monitor is connected to the board before the board starts, the Wayland background layer is displayed on this HDMI monitor.
+
* [[#HDMI-cold-plug|'''HDMI cold-plug''']]: 如果在板子启动之前将HDMI监视器连接到板上,则Wayland背景层会显示在此HDMI监视器上。
  
* [[#HDMI-hot-plug|'''HDMI hot-plug''']]: if an HDMI monitor is connected to the board after the board starts, this plug is automatically detected by Wayland / Weston. The demo launcher window is not automatically upscaled: close and open it again to have it fullscreeen on the HDMI monitor.
+
* [[#HDMI-hot-plug|'''HDMI hot-plug''']]: 如果在板卡启动后将HDMI监视器连接到板卡,则Wayland / Weston会自动检测到此插头。 演示启动器窗口不会自动放大:关闭并再次打开它以使其在HDMI监视器上全屏显示。
  
* [[#HDMI-hot-unplug|'''HDMI hot-unplug''']]: if an HDMI monitor is disconnected from the board while the Wayland background layer is displayed on the HDMI monitor, this unplug is automatically detected by Wayland / Weston. The demo launcher window is not automatically downscaled: restart Weston<ref name="restart Weston"/> to have it fullscreen on the DSI display.
+
* [[#HDMI-hot-unplug|'''HDMI hot-unplug''']]: 如果在HDMI监视器上显示Wayland背景层时将HDMI监视器从板上断开,则Wayland / Weston会自动检测到此拔出。 演示启动器窗口不会自动缩小:重新启动Weston<ref name="restart Weston"/> 使其在DSI显示屏上全屏显示。
  
 
==Video modes==
 
==Video modes==
Generally, the HDMI monitor (or TV) provides several video modes (resolutions and refresh frequencies), that might not be all supported by the platform. In case of '''HDMI cold-plug''' or '''HDMI hot-plug''', the first video mode provided by the HDMI monitor that is supported by the platform, is selected. To change this video mode selected per default, all the video modes both provided by the HDMI monitor and supported by the platform shall be retrieved, optionally tested, and finally set in the ''weston.ini'' configuration file<ref>[[Wayland Weston overview#Configuration|How to configure Weston]]</ref>.
+
通常,HDMI监视器(或电视)提供几种视频模式(分辨率和刷新频率),平台可能不完全支持这些模式。 如果使用“ HDMI冷插”或“ HDMI热插”,则选择平台支持的HDMI监视器提供的第一种视频模式。 要更改默认情况下选择的此视频模式,应检索,可选地测试HDMI监视器提供的和平台支持的所有视频模式,最后在“ weston.ini”配置文件中设置<ref>[[Wayland Weston overview#Configuration|How to configure Weston]]</ref>.
  
Let us assume that the DSI display and the HDMI monitor are connected to the board, and that the Wayland background is displayed on the HDMI monitor.
+
让我们假设DSI显示器和HDMI监视器连接到电路板,并且Wayland背景显示在HDMI监视器上。
  
* Retrieve the video modes provided by the HDMI monitor and supported by the platform thanks to the [[DRM KMS overview#modetest (DRM/KMS test tool) | modetest]] command (see [[#How to get all the video modes supported by the HDMI monitor|below]] how to get all the video modes supported by the HDMI monitor, whether they are supported or not by the platform)
+
* 借助 [[DRM KMS overview#modetest (DRM/KMS test tool) | modetest]]命令(参见 [[#How to get all the video modes supported by the HDMI monitor|below]] 如何获取HDMI显示器支持的所有视频模式,无论平台是否支持),获取HDMI监视器提供的、平台支持的所有视频模式。
  
 
  {{Board$}} modetest -M stm
 
  {{Board$}} modetest -M stm
第279行: 第280行:
 
</pre>
 
</pre>
  
* Analyse the output of the ''modetest'' command:
+
* 分析“ modetest”命令的输出:
** 10 modes (8 unique modes) of the {{Highlight|connected}} HDMI monitor ({{Highlight|HDMI-A-1}} / connector {{Highlight|29}}) are supported:
+
** 支持{{Highlight|connected}} HDMI监视器({{Highlight|HDMI-A-1}} / connector {{Highlight|29}}) 的10种模式(8种唯一模式) :
 
*** {{Highlight|1920x1080}} resolution with a refresh frequency of {{Highlight|30}} Hz
 
*** {{Highlight|1920x1080}} resolution with a refresh frequency of {{Highlight|30}} Hz
 
*** {{Highlight|1920x1080}} resolution with a refresh frequency of {{Highlight|25}} Hz
 
*** {{Highlight|1920x1080}} resolution with a refresh frequency of {{Highlight|25}} Hz
第290行: 第291行:
 
*** {{Highlight|720x480}} resolution with a refresh frequency of {{Highlight|60}} Hz
 
*** {{Highlight|720x480}} resolution with a refresh frequency of {{Highlight|60}} Hz
  
{{Warning | In the above example, some 1920x1080 resolutions are available but use cases may not work properly if the platform is not powerful enough for such high resolutions (DDR size and bandwidth, CPU and GPU performances...).}}
+
{{Warning | 在上面的示例中,可以使用一些1920x1080分辨率,但是如果平台对于这样的高分辨率(DDR大小和带宽,CPU和GPU性能...)不够强大,则用例可能无法正常工作。}}
  
  
第310行: 第311行:
 
   {{Highlight|720x480 60}} 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver
 
   {{Highlight|720x480 60}} 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver
  
:* 1 mode of the {{HighlightParam|connected}} DSI display ({{HighlightParam|DSI-1}} / connector {{HighlightParam|31}}) is supported
+
:* 支持 {{HighlightParam|connected}}DSI显示({{HighlightParam|DSI-1}} /连接器 {{HighlightParam|31}}) 的1种模式
::* {{HighlightParam|480x800}} resolution with a refresh frequency of {{HighlightParam|50}} Hz
+
::* {{HighlightParam|480x800}} 分辨率,刷新频率为 {{HighlightParam|50}} Hz
  Connectors:
+
  连接器:
 
  id      encoder status          name            size (mm)      modes  encoders
 
  id      encoder status          name            size (mm)      modes  encoders
 
  [...]
 
  [...]
第321行: 第322行:
  
  
* Per default, the first video mode provided by the HDMI monitor that is supported by the platform, is selected: here, it is the {{Highlight|1280x720 60}} resolution
+
* 默认情况下,会选择平台支持的HDMI监视器提供的第一个视频模式:这里是{{Highlight|1280x720 60}} 分辨率
** Check it with the information provided by the ''modetest'' command: make the link between the HDMI connector {{Highlight|29}}, the encoder id {{Highlight|28}}, the CRTC id {{Highlight|33}}, and finally the video mode {{highlight|1280x720 60}}
+
** 使用“ modetest”命令提供的信息进行检查:在HDMI连接器之间建立链接{{Highlight|29}}, 编码器ID{{Highlight|28}}, CRTC ID {{Highlight|33}}, 最后是视频模式 {{highlight|1280x720 60}}
  Connectors:
+
  连接器:
 
  id      encoder status          name            size (mm)      modes  encoders
 
  id      encoder status          name            size (mm)      modes  encoders
 
  {{Highlight|29}}      {{Highlight|28}}      connected      HDMI-A-1        710x400        3      27
 
  {{Highlight|29}}      {{Highlight|28}}      connected      HDMI-A-1        710x400        3      27
 
   
 
   
  Encoders:
+
  编码器:
 
  id      crtc    type    possible crtcs  possible clones
 
  id      crtc    type    possible crtcs  possible clones
 
  {{Highlight|28}}      {{Highlight|33}}      DPI    0x00000001      0x00000000
 
  {{Highlight|28}}      {{Highlight|33}}      DPI    0x00000001      0x00000000
第353行: 第354行:
  
  
* Set the selected video mode in the ''/etc/xdg/weston/weston.ini'' configuration file, and restart Weston<ref name="restart Weston"/>
+
* 在“ /etc/xdg/weston/weston.ini”配置文件中设置选定的视频模式,然后重新启动Weston<ref name="restart Weston"/>
 
Syntax:
 
Syntax:
 
  [output]
 
  [output]
第365行: 第366行:
  
  
* Check that the new video mode has been taken into account with the information provided by the ''modetest'' command: make the link between the HDMI connector {{Highlight|29}}, the encoder id {{Highlight|28}}, the CRTC id {{Highlight|33}}, and finally the new video mode {{highlight|720x480}}
+
* 检查“ modetest”命令提供的信息是否已考虑新的视频模式:在HDMI连接器{{Highlight|29}}, 编码器ID {{Highlight|28}},之间建立链接, CRTC ID {{Highlight|33}}, 最后是新的视频模式 {{highlight|720x480}}
 
  {{Board$}} modetest -M stm
 
  {{Board$}} modetest -M stm
  
第383行: 第384行:
 
==FAQ==
 
==FAQ==
 
===How to get all the video modes supported by the HDMI monitor===
 
===How to get all the video modes supported by the HDMI monitor===
This chapter gives a method to retrieve '''all the video modes supported by the HDMI monitor''', whether they are supported or not by the platform.
+
本章提供了一种检索'''HDMI监视器支持的所有视频模式'''的方法,无论平台是否支持这些模式。
  
* Retrieve all the video modes supported by the HDMI monitor
+
* 检索HDMI监视器支持的所有视频模式
 
  {{Board$}} dmesg -C
 
  {{Board$}} dmesg -C
 
  {{Board$}} echo 4 > /sys/module/drm/parameters/debug
 
  {{Board$}} echo 4 > /sys/module/drm/parameters/debug
第579行: 第580行:
 
</pre>
 
</pre>
  
* Analyse the ''drm'' logs
+
* 分析“ drm”日志
** The modes of the HDMI monitor ({{Highlight|HDMI-A-1}} / connector {{Highlight|29}}) that contain one of the following keywords are not supported: {{Highlight|CLOCK_HIGH}}, {{Highlight|CLOCK_RANGE}} and {{Highlight|NO_INTERLACE}}
+
** 不支持包含以下关键字之一的HDMI监视器({{Highlight|HDMI-A-1}}/连接器{{Highlight|29}}) 的模式: {{Highlight|CLOCK_HIGH}}, {{Highlight|CLOCK_RANGE}} {{Highlight|NO_INTERLACE}}
 
  [ 2527.787272] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:{{Highlight|29}}:{{Highlight|HDMI-A-1}}]
 
  [ 2527.787272] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:{{Highlight|29}}:{{Highlight|HDMI-A-1}}]
 
  [...]
 
  [...]
第590行: 第591行:
 
  [ 2527.828934] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: {{Highlight|NO_INTERLACE}}
 
  [ 2527.828934] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: {{Highlight|NO_INTERLACE}}
  
:* The 10 modes of the HDMI monitor ({{Highlight|HDMI-A-1}} / connector {{Highlight|29}}) that are supported (as analyzed from the [[#Video modes|''modetest'' output]]), are also seen with these ''drm'' logs
+
:* 受支持的HDMI监视器的10种模式 ({{Highlight|HDMI-A-1}} /连接器 {{Highlight|29}}) (根据 [[#Video modes|''modetest'' output]]),也可以在这些“ drm”日志中看到
 
  [ 2527.831682] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:{{Highlight|29}}:{{Highlight|HDMI-A-1}}] probed modes :
 
  [ 2527.831682] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:{{Highlight|29}}:{{Highlight|HDMI-A-1}}] probed modes :
 
  [ 2527.831703] [drm:drm_mode_debug_printmodeline] Modeline 76:"1920x1080" 30 74250 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x5
 
  [ 2527.831703] [drm:drm_mode_debug_printmodeline] Modeline 76:"1920x1080" 30 74250 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x5
第603行: 第604行:
 
  [ 2527.831883] [drm:drm_mode_debug_printmodeline] Modeline 72:"720x480" 60 27000 720 736 798 858 480 489 495 525 0x40 0xa
 
  [ 2527.831883] [drm:drm_mode_debug_printmodeline] Modeline 72:"720x480" 60 27000 720 736 798 858 480 489 495 525 0x40 0xa
  
:* The only mode of the DSI display ({{HighlightParam|DSI-1}} / connector {{HighlightParam|31}}) that is supported (as analyzed from the [[#Video modes|''modetest'' output]]), is also seen with these ''drm'' logs
+
:* 支持DSI显示器的唯一模式({{HighlightParam|DSI-1}} /连接器 {{HighlightParam|31}}) (根据 [[#Video modes|''modetest'' output]]分析) ,也可以在这些“ drm”日志中看到
 
  [ 2527.833066] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:{{HighlightParam|31}}:{{HighlightParam|DSI-1}}] probed modes :
 
  [ 2527.833066] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:{{HighlightParam|31}}:{{HighlightParam|DSI-1}}] probed modes :
 
  [ 2527.833092] [drm:drm_mode_debug_printmodeline] Modeline 37:"480x800" 50 33000 480 600 664 784 800 814 828 842 0x48 0x0
 
  [ 2527.833092] [drm:drm_mode_debug_printmodeline] Modeline 37:"480x800" 50 33000 480 600 664 784 800 814 828 842 0x48 0x0
第609行: 第610行:
 
==References==
 
==References==
 
<references />
 
<references />
 
<noinclude>
 
{{PublicationRequestId | 8081 | 2018-07-09 | AlainF}}
 
[[Category:How to run use cases]]
 
[[Category:DRM KMS]]
 
[[Category:Wayland Weston]]
 
</noinclude>
 

2020年11月10日 (二) 09:30的最新版本

Article purpose

本文旨在指定在HDMI ®[1] 监视器(或电视)上显示的内容 通过HDMI电缆连接到STMicroelectronics板上(在以下说明的不同用例中)。

本文还介绍了如何获取设备支持的HDMI监视器(或电视)的视频模式(分辨率和刷新频率),如何对其进行测试以及最终如何选择。

Prerequisites

显然,STMicroelectronics板必须具有HDMI连接器,这是以下情况的情况:

HDMI cable connected on Discovery kit
STM32MP157C-DK2 shown here (without the MB1407 daughterboard DSI display)

还需要HDMI电缆和HDMI监视器(或电视)。

Use cases

下表显示了涉及DSI显示器和HDMI监视器的不同用例。

Original situation Action Final situation
DSI display HDMI monitor
HDMI unplugged
- Board not started
- DSI display connected
- HDMI monitor not connected
Start the board DSI U-Boot splash screen.png then briefly DSI user splash screen.png and finally DSI Wayland background.png HDMI black screen.png
HDMI cold-plug
- Board not started
- DSI display connected
- HDMI monitor connected
Start the board DSI U-Boot splash screen.png HDMI user splash screen.png then HDMI Wayland background.png
HDMI hot-plug
- Board started
- DSI display connected
- HDMI monitor not connected
Plug the HDMI monitor DSI black screen.png HDMI Wayland background GTK launcher.png
The demo launcher window is not displayed fullscreen
Tap or click on the top-right corner cross to close the demo launcher window

Tap or click on the left-bottom "nine blue square" icon to start again the demo launcher window
DSI black screen.png HDMI Wayland background.png
The demo launcher window is displayed fullscreen
HDMI hot-unplug
- Board started
- DSI display connected
- HDMI monitor connected
Unplug the HDMI monitor DSI Wayland background GTK launcher.png
The demo launcher window is not downscaled
HDMI black screen.png
Restart Weston[2] DSI Wayland background.png HDMI black screen.png


以下语句解释了以上总结的用例:

  • U-Boot图形控制台(“ ST life.augmented”图片)永远不会显示在HDMI监视器上。 此控制台将显示在DSI显示屏上(如果板上有)。
  • 如果该板同时具有DSI显示器和HDMI监视器,则Wayland背景层仅显示在这些显示器之一上(请参阅下面的“规则”)。
  • HDMI unplugged: 如果在板卡启动之前没有HDMI监视器连接到板上,并且如果DSI显示器连接到板上,则Wayland背景层显示在 DSI显示。
  • HDMI cold-plug: 如果在板子启动之前将HDMI监视器连接到板上,则Wayland背景层会显示在此HDMI监视器上。
  • HDMI hot-plug: 如果在板卡启动后将HDMI监视器连接到板卡,则Wayland / Weston会自动检测到此插头。 演示启动器窗口不会自动放大:关闭并再次打开它以使其在HDMI监视器上全屏显示。
  • HDMI hot-unplug: 如果在HDMI监视器上显示Wayland背景层时将HDMI监视器从板上断开,则Wayland / Weston会自动检测到此拔出。 演示启动器窗口不会自动缩小:重新启动Weston[2] 使其在DSI显示屏上全屏显示。

Video modes

通常,HDMI监视器(或电视)提供几种视频模式(分辨率和刷新频率),平台可能不完全支持这些模式。 如果使用“ HDMI冷插”或“ HDMI热插”,则选择平台支持的HDMI监视器提供的第一种视频模式。 要更改默认情况下选择的此视频模式,应检索,可选地测试HDMI监视器提供的和平台支持的所有视频模式,最后在“ weston.ini”配置文件中设置[3].

让我们假设DSI显示器和HDMI监视器连接到电路板,并且Wayland背景显示在HDMI监视器上。

  • 借助 modetest命令(参见 below 如何获取HDMI显示器支持的所有视频模式,无论平台是否支持),获取HDMI监视器提供的、平台支持的所有视频模式。
Board $> modetest -M stm
Encoders:
id      crtc    type    possible crtcs  possible clones
28      33      DPI     0x00000001      0x00000000
30      0       DSI     0x00000001      0x00000000

Connectors:
id      encoder status          name            size (mm)       modes   encoders
29      28      connected       HDMI-A-1        700x390         10      28
  modes:
        name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
  1920x1080 30 1920 2008 2052 2200 1080 1084 1089 1125 74250 flags: phsync, pvsync; type: driver
  1920x1080 25 1920 2448 2492 2640 1080 1084 1089 1125 74250 flags: phsync, pvsync; type: driver
  1920x1080 24 1920 2558 2602 2750 1080 1084 1089 1125 74250 flags: phsync, pvsync; type: driver
  1280x720 60 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: driver
  1280x720 60 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: driver
  1280x720 50 1280 1720 1760 1980 720 725 730 750 74250 flags: phsync, pvsync; type: driver
  1280x720 50 1280 1720 1760 1980 720 725 730 750 74250 flags: phsync, pvsync; type: driver
  800x600 75 800 816 896 1056 600 601 604 625 49500 flags: phsync, pvsync; type: driver
  720x576 50 720 732 796 864 576 581 586 625 27000 flags: nhsync, nvsync; type: driver
  720x480 60 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver
  props:
        1 EDID:
                flags: immutable blob
                blobs:

                value:
                        00ffffffffffff004c2d920900000000
                        0a160103804627780aee91a3544c9926
                        0f5054bdef80714f81c0810081809500
                        a9c0b3000101023a801871382d40582c
                        4500a05a0000001e662156aa51001e30
                        468f3300a05a0000001e000000fd0018
                        4b0f5117000a202020202020000000fc
                        0053414d53554e470a20202020200152
                        020330f14d901f041305140312202122
                        07162309070783010000e2000f72030c
                        001000b82d20d0080140073f405090a0
                        011d80d0721c1620102c2580a05a0000
                        009e011d8018711c1620582c2500a05a
                        0000009e011d00bc52d01e20b8285540
                        a05a0000001e011d007251d01e206e28
                        5500a05a0000001e0000000000000097
        2 DPMS:
                flags: enum
                enums: On=0 Standby=1 Suspend=2 Off=3
                value: 0
        5 link-status:
                flags: enum
                enums: Good=0 Bad=1
                value: 0
        6 non-desktop:
                flags: immutable range
                values: 0 1
                value: 0
        19 CRTC_ID:
                flags: object
                value: 33
31      0       connected       DSI-1           52x86           1       30
  modes:
        name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
  480x800 50 480 600 664 784 800 814 828 842 33000 flags: ; type: preferred, driver
  props:
        1 EDID:
                flags: immutable blob
                blobs:

                value:
        2 DPMS:
                flags: enum
                enums: On=0 Standby=1 Suspend=2 Off=3
                value: 3
        5 link-status:
                flags: enum
                enums: Good=0 Bad=1
                value: 0
        6 non-desktop:
                flags: immutable range
                values: 0 1
                value: 0
        19 CRTC_ID:
                flags: object
                value: 0

CRTCs:
id      fb      pos     size
33      39      (0,0)   (1280x720)
  1280x720 60 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: driver
  props:
        20 ACTIVE:
                flags: range
                values: 0 1
                value: 1
        21 MODE_ID:
                flags: blob
                blobs:

                value:
                        0a22010000056e05960572060000d002
                        d502da02ee0200003c00000005000000
                        40000000313238307837323000000000
                        00000000000000000000000000000000
                        00000000
        18 OUT_FENCE_PTR:
                flags: range
                values: 0 18446744073709551615
                value: 0
        25 GAMMA_LUT:
                flags: blob
                blobs:

                value:
        26 GAMMA_LUT_SIZE:
                flags: immutable range
                values: 0 4294967295
                value: 256

Planes:
id      crtc    fb      CRTC x,y        x,y     gamma size      possible crtcs
32      33      39      0,0             0,0     0               0x00000001
  formats: AR24 XR24 RG24 RG16 AR15 XR15 AR12 XR12 C8  
  props:
        7 type:
                flags: immutable enum
                enums: Overlay=0 Primary=1 Cursor=2
                value: 1
        16 FB_ID:
                flags: object
                value: 39
        17 IN_FENCE_FD:
                flags: signed range
                values: -1 2147483647
                value: -1
        19 CRTC_ID:
                flags: object
                value: 33
        12 CRTC_X:
                flags: signed range
                values: -2147483648 2147483647
                value: 0
        13 CRTC_Y:
                flags: signed range
                values: -2147483648 2147483647
                value: 0
        14 CRTC_W:
                flags: range
                values: 0 2147483647
                value: 1280
        15 CRTC_H:
                flags: range
                values: 0 2147483647
                value: 720
        8 SRC_X:
                flags: range
                values: 0 4294967295
                value: 0
        9 SRC_Y:
                flags: range
                values: 0 4294967295
                value: 0
        10 SRC_W:
                flags: range
                values: 0 4294967295
                value: 83886080
        11 SRC_H:
                flags: range
                values: 0 4294967295
                value: 47185920
34      0       0       0,0             0,0     0               0x00000001
  formats: AR24 RG24 RG16 AR15 AR12 C8  
  props:
        7 type:
                flags: immutable enum
                enums: Overlay=0 Primary=1 Cursor=2
                value: 0
        16 FB_ID:
                flags: object
                value: 0
        17 IN_FENCE_FD:
                flags: signed range
                values: -1 2147483647
                value: -1
        19 CRTC_ID:
                flags: object
                value: 0
        12 CRTC_X:
                flags: signed range
                values: -2147483648 2147483647
                value: 0
        13 CRTC_Y:
                flags: signed range
                values: -2147483648 2147483647
                value: 0
        14 CRTC_W:
                flags: range
                values: 0 2147483647
                value: 0
        15 CRTC_H:
                flags: range
                values: 0 2147483647
                value: 0
        8 SRC_X:
                flags: range
                values: 0 4294967295
                value: 0
        9 SRC_Y:
                flags: range
                values: 0 4294967295
                value: 0
        10 SRC_W:
                flags: range
                values: 0 4294967295
                value: 0
        11 SRC_H:
                flags: range
                values: 0 4294967295
                value: 0

Frame buffers:
id      size    pitch
  • 分析“ modetest”命令的输出:
    • 支持connected HDMI监视器(HDMI-A-1 / connector 29) 的10种模式(8种唯一模式) :
      • 1920x1080 resolution with a refresh frequency of 30 Hz
      • 1920x1080 resolution with a refresh frequency of 25 Hz
      • 1920x1080 resolution with a refresh frequency of 24 Hz
      • 1280x720 resolution with a refresh frequency of 60 Hz
      • 1280x720 resolution with a refresh frequency of 50 Hz
      • 800x600 resolution with a refresh frequency of 75 Hz
      • 720x576 resolution with a refresh frequency of 50 Hz
      • 720x480 resolution with a refresh frequency of 60 Hz
Warning.png 在上面的示例中,可以使用一些1920x1080分辨率,但是如果平台对于这样的高分辨率(DDR大小和带宽,CPU和GPU性能...)不够强大,则用例可能无法正常工作。


Connectors:
id      encoder status          name            size (mm)       modes   encoders
29      28      connected       HDMI-A-1        700x390         10      28
  modes:
        name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
 1920x1080 30 1920 2008 2052 2200 1080 1084 1089 1125 74250 flags: phsync, pvsync; type: driver
 1920x1080 25 1920 2448 2492 2640 1080 1084 1089 1125 74250 flags: phsync, pvsync; type: driver
 1920x1080 24 1920 2558 2602 2750 1080 1084 1089 1125 74250 flags: phsync, pvsync; type: driver
 1280x720 60 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: driver
 1280x720 60 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: driver  # duplicated mode, depends on hdmi tv
 1280x720 50 1280 1720 1760 1980 720 725 730 750 74250 flags: phsync, pvsync; type: driver
 1280x720 50 1280 1720 1760 1980 720 725 730 750 74250 flags: phsync, pvsync; type: driver  # duplicated mode, depends on hdmi tv
 800x600 75 800 816 896 1056 600 601 604 625 49500 flags: phsync, pvsync; type: driver
 720x576 50 720 732 796 864 576 581 586 625 27000 flags: nhsync, nvsync; type: driver
 720x480 60 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver
  • 支持 connectedDSI显示(DSI-1 /连接器 31) 的1种模式
  • 480x800 分辨率,刷新频率为 50 Hz
连接器:
id      encoder status          name            size (mm)       modes   encoders
[...]
31      0       connected       DSI-1           52x86           1       30
 modes:
        name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
  480x800 50 50 480 600 664 784 800 814 828 842 33000 flags: ; type: preferred, driver


  • 默认情况下,会选择平台支持的HDMI监视器提供的第一个视频模式:这里是1280x720 60 分辨率
    • 使用“ modetest”命令提供的信息进行检查:在HDMI连接器之间建立链接29, 编码器ID28, CRTC ID 33, 最后是视频模式 1280x720 60
连接器:
id      encoder status          name            size (mm)       modes   encoders
29      28      connected       HDMI-A-1        710x400         3       27

编码器:
id      crtc    type    possible crtcs  possible clones
28      33      DPI     0x00000001      0x00000000
CRTCs:
id      fb      pos     size
33      39      (0,0)   (1280x720)
  1280x720 60 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: driver
  • Stop Weston[2], use the modetest command[4] to test the different modes, and restart Weston[2]

Syntax:

Board $> modetest -M stm -s <HDMI connector>:<selected resolution> -v

Example with the 8 modes identified above:

Board $> systemctl stop weston
Board $> modetest -M stm -s 29:1920x1080-30 -v
Board $> modetest -M stm -s 29:1920x1080-25 -v
Board $> modetest -M stm -s 29:1920x1080-24 -v
Board $> modetest -M stm -s 29:1280x720-60 -v  # -60 to specify the Hz as there are two 1280x720 modes
Board $> modetest -M stm -s 29:1280x720-50 -v  # -50 to specify the Hz as there are two 1280x720 modes
Board $> modetest -M stm -s 29:800x600 -v
Board $> modetest -M stm -s 29:720x480 -v
Board $> modetest -M stm -s 29:720x576 -v
Board $> systemctl start weston


  • 在“ /etc/xdg/weston/weston.ini”配置文件中设置选定的视频模式,然后重新启动Weston[2]

Syntax:

[output]
name=HDMI-A-1
mode=<selected resolution>

Example (720x480 resolution selected):

mode=720x480
Board $> systemctl restart weston


  • 检查“ modetest”命令提供的信息是否已考虑新的视频模式:在HDMI连接器29, 编码器ID 28,之间建立链接, CRTC ID 33, 最后是新的视频模式 720x480
Board $> modetest -M stm
Encoders:
id      crtc    type    possible crtcs  possible clones
28      33      DPI     0x00000001      0x00000000

Connectors:
id      encoder status          name            size (mm)       modes   encoders
29      28      connected       HDMI-A-1        700x390         10       28
CRTCs:
id      fb      pos     size
33      35      (0,0)   (720x480)
  720x480 60 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver

FAQ

How to get all the video modes supported by the HDMI monitor

本章提供了一种检索HDMI监视器支持的所有视频模式的方法,无论平台是否支持这些模式。

  • 检索HDMI监视器支持的所有视频模式
Board $> dmesg -C
Board $> echo 4 > /sys/module/drm/parameters/debug
Board $> systemctl restart weston
Board $> dmesg
[ 2527.787272] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:29:HDMI-A-1]
[ 2527.825480] [drm:drm_add_display_info] non_desktop set to 0
[ 2527.825502] [drm:drm_add_display_info] HDMI: DVI dual 0, max TMDS clock 225000 kHz
[ 2527.825551] [drm:drm_add_edid_modes.part.19] ELD monitor SAMSUNG
[ 2527.825569] [drm:drm_add_edid_modes.part.19] HDMI: latency present 0 0, video latency 208 1, audio latency 8 64
[ 2527.825580] [drm:drm_add_edid_modes.part.19] ELD size 32, SAD count 1
[ 2527.825591] [drm:drm_add_display_info] non_desktop set to 0
[ 2527.825601] [drm:drm_add_display_info] HDMI: DVI dual 0, max TMDS clock 225000 kHz
[ 2527.828842] [drm:drm_mode_debug_printmodeline] Modeline 36:"1920x1080" 60 148500 1920 2008 2052 2200 1080 1084 1089 1125 0x48 0x5
[ 2527.828863] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: CLOCK_HIGH
[ 2527.828888] [drm:drm_mode_debug_printmodeline] Modeline 39:"1366x768" 60 85500 1366 1436 1579 1792 768 771 774 798 0x40 0x5
[ 2527.828901] [drm:drm_mode_prune_invalid] Not using 1366x768 mode: CLOCK_RANGE
[ 2527.828922] [drm:drm_mode_debug_printmodeline] Modeline 40:"1920x1080i" 50 74250 1920 2448 2492 2640 1080 1084 1094 1125 0x40 0x15
[ 2527.828934] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.828955] [drm:drm_mode_debug_printmodeline] Modeline 41:"1920x1080i" 60 74250 1920 2008 2052 2200 1080 1084 1094 1125 0x40 0x15
[ 2527.828967] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.828987] [drm:drm_mode_debug_printmodeline] Modeline 46:"1152x864" 0 108000 1152 1216 1344 1600 864 865 868 900 0x40 0x5
[ 2527.828999] [drm:drm_mode_prune_invalid] Not using 1152x864 mode: CLOCK_HIGH
[ 2527.829019] [drm:drm_mode_debug_printmodeline] Modeline 47:"1280x800" 0 71000 1280 1328 1360 1440 800 803 809 823 0x40 0x9
[ 2527.829039] [drm:drm_mode_prune_invalid] Not using 1280x800 mode: CLOCK_RANGE
[ 2527.829059] [drm:drm_mode_debug_printmodeline] Modeline 48:"1280x1024" 0 108000 1280 1328 1440 1688 1024 1025 1028 1066 0x40 0x5
[ 2527.829071] [drm:drm_mode_prune_invalid] Not using 1280x1024 mode: CLOCK_HIGH
[ 2527.829091] [drm:drm_mode_debug_printmodeline] Modeline 49:"1440x900" 0 88750 1440 1488 1520 1600 900 903 909 926 0x40 0x9
[ 2527.829103] [drm:drm_mode_prune_invalid] Not using 1440x900 mode: CLOCK_RANGE
[ 2527.829123] [drm:drm_mode_debug_printmodeline] Modeline 50:"1600x900" 0 108000 1600 1624 1704 1800 900 901 904 1000 0x40 0x5
[ 2527.829135] [drm:drm_mode_prune_invalid] Not using 1600x900 mode: CLOCK_HIGH
[ 2527.829155] [drm:drm_mode_debug_printmodeline] Modeline 51:"1680x1050" 0 119000 1680 1728 1760 1840 1050 1053 1059 1080 0x40 0x9
[ 2527.829167] [drm:drm_mode_prune_invalid] Not using 1680x1050 mode: CLOCK_HIGH
[ 2527.829188] [drm:drm_mode_debug_printmodeline] Modeline 52:"800x600" 0 40000 800 840 968 1056 600 601 605 628 0x40 0x5
[ 2527.829199] [drm:drm_mode_prune_invalid] Not using 800x600 mode: CLOCK_RANGE
[ 2527.829220] [drm:drm_mode_debug_printmodeline] Modeline 53:"640x480" 0 31500 640 656 720 840 480 481 484 500 0x40 0xa
[ 2527.829231] [drm:drm_mode_prune_invalid] Not using 640x480 mode: CLOCK_RANGE
[ 2527.829253] [drm:drm_mode_debug_printmodeline] Modeline 54:"640x480" 0 31500 640 664 704 832 480 489 492 520 0x40 0xa
[ 2527.829265] [drm:drm_mode_prune_invalid] Not using 640x480 mode: CLOCK_RANGE
[ 2527.829287] [drm:drm_mode_debug_printmodeline] Modeline 55:"640x480" 0 30240 640 704 768 864 480 483 486 525 0x40 0xa
[ 2527.829298] [drm:drm_mode_prune_invalid] Not using 640x480 mode: CLOCK_RANGE
[ 2527.829318] [drm:drm_mode_debug_printmodeline] Modeline 56:"640x480" 0 25175 640 656 752 800 480 490 492 525 0x40 0xa
[ 2527.829330] [drm:drm_mode_prune_invalid] Not using 640x480 mode: CLOCK_RANGE
[ 2527.829350] [drm:drm_mode_debug_printmodeline] Modeline 57:"720x400" 0 28320 720 738 846 900 400 412 414 449 0x40 0x6
[ 2527.829372] [drm:drm_mode_prune_invalid] Not using 720x400 mode: CLOCK_RANGE
[ 2527.829393] [drm:drm_mode_debug_printmodeline] Modeline 58:"1280x1024" 0 135000 1280 1296 1440 1688 1024 1025 1028 1066 0x40 0x5
[ 2527.829404] [drm:drm_mode_prune_invalid] Not using 1280x1024 mode: CLOCK_HIGH
[ 2527.829424] [drm:drm_mode_debug_printmodeline] Modeline 59:"1024x768" 0 78750 1024 1040 1136 1312 768 769 772 800 0x40 0x5
[ 2527.829436] [drm:drm_mode_prune_invalid] Not using 1024x768 mode: CLOCK_RANGE
[ 2527.829457] [drm:drm_mode_debug_printmodeline] Modeline 60:"1024x768" 0 75000 1024 1048 1184 1328 768 771 777 806 0x40 0xa
[ 2527.829469] [drm:drm_mode_prune_invalid] Not using 1024x768 mode: CLOCK_RANGE
[ 2527.829489] [drm:drm_mode_debug_printmodeline] Modeline 61:"1024x768" 0 65000 1024 1048 1184 1344 768 771 777 806 0x40 0xa
[ 2527.829501] [drm:drm_mode_prune_invalid] Not using 1024x768 mode: CLOCK_RANGE
[ 2527.829521] [drm:drm_mode_debug_printmodeline] Modeline 62:"832x624" 0 57284 832 864 928 1152 624 625 628 667 0x40 0xa
[ 2527.829533] [drm:drm_mode_prune_invalid] Not using 832x624 mode: CLOCK_RANGE
[ 2527.829553] [drm:drm_mode_debug_printmodeline] Modeline 65:"800x600" 0 50000 800 856 976 1040 600 637 643 666 0x40 0x5
[ 2527.829564] [drm:drm_mode_prune_invalid] Not using 800x600 mode: CLOCK_RANGE
[ 2527.829585] [drm:drm_mode_debug_printmodeline] Modeline 67:"1920x1080" 0 148500 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x5
[ 2527.829596] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: CLOCK_HIGH
[ 2527.829617] [drm:drm_mode_debug_printmodeline] Modeline 70:"1920x1080" 0 148500 1920 2448 2492 2640 1080 1084 1089 1125 0x40 0x5
[ 2527.829629] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: CLOCK_HIGH
[ 2527.829649] [drm:drm_mode_debug_printmodeline] Modeline 78:"1920x1080i" 0 74250 1920 2008 2052 2200 1080 1084 1094 1125 0x40 0x15
[ 2527.829661] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.829690] [drm:drm_mode_debug_printmodeline] Modeline 79:"1920x1080i" 0 74250 1920 2448 2492 2640 1080 1084 1094 1125 0x40 0x15
[ 2527.829701] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.829722] [drm:drm_mode_debug_printmodeline] Modeline 85:"720x480i" 0 13500 720 739 801 858 480 488 494 525 0x40 0x101a
[ 2527.829733] [drm:drm_mode_prune_invalid] Not using 720x480i mode: NO_INTERLACE
[ 2527.829754] [drm:drm_mode_debug_printmodeline] Modeline 86:"720x576i" 0 13500 720 732 795 864 576 580 586 625 0x40 0x101a
[ 2527.829765] [drm:drm_mode_prune_invalid] Not using 720x576i mode: NO_INTERLACE
[ 2527.829787] [drm:drm_mode_debug_printmodeline] Modeline 87:"1920x1080i" 50 74250 1920 2448 2492 2640 1080 1084 1094 1125 0x40 0x20015
[ 2527.829799] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.829820] [drm:drm_mode_debug_printmodeline] Modeline 88:"1920x1080i" 60 74250 1920 2008 2052 2200 1080 1084 1094 1125 0x40 0x20015
[ 2527.829832] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.829853] [drm:drm_mode_debug_printmodeline] Modeline 89:"1280x720" 50 74250 1280 1720 1760 1980 720 725 730 750 0x40 0x1c005
[ 2527.829865] [drm:drm_mode_prune_invalid] Not using 1280x720 mode: NO_STEREO
[ 2527.829885] [drm:drm_mode_debug_printmodeline] Modeline 90:"1280x720" 50 74250 1280 1720 1760 1980 720 725 730 750 0x40 0x4005
[ 2527.829897] [drm:drm_mode_prune_invalid] Not using 1280x720 mode: NO_STEREO
[ 2527.829917] [drm:drm_mode_debug_printmodeline] Modeline 91:"1280x720" 60 74250 1280 1390 1430 1650 720 725 730 750 0x40 0x1c005
[ 2527.829929] [drm:drm_mode_prune_invalid] Not using 1280x720 mode: NO_STEREO
[ 2527.829950] [drm:drm_mode_debug_printmodeline] Modeline 92:"1280x720" 60 74250 1280 1390 1430 1650 720 725 730 750 0x40 0x4005
[ 2527.829961] [drm:drm_mode_prune_invalid] Not using 1280x720 mode: NO_STEREO
[ 2527.829982] [drm:drm_mode_debug_printmodeline] Modeline 93:"1280x720" 0 74250 1280 1390 1430 1650 720 725 730 750 0x40 0x1c005
[ 2527.830003] [drm:drm_mode_prune_invalid] Not using 1280x720 mode: NO_STEREO
[ 2527.830024] [drm:drm_mode_debug_printmodeline] Modeline 94:"1280x720" 0 74250 1280 1390 1430 1650 720 725 730 750 0x40 0x4005
[ 2527.830035] [drm:drm_mode_prune_invalid] Not using 1280x720 mode: NO_STEREO
[ 2527.830056] [drm:drm_mode_debug_printmodeline] Modeline 95:"1280x720" 0 74250 1280 1720 1760 1980 720 725 730 750 0x40 0x1c005
[ 2527.830068] [drm:drm_mode_prune_invalid] Not using 1280x720 mode: NO_STEREO
[ 2527.830088] [drm:drm_mode_debug_printmodeline] Modeline 96:"1280x720" 0 74250 1280 1720 1760 1980 720 725 730 750 0x40 0x4005
[ 2527.830099] [drm:drm_mode_prune_invalid] Not using 1280x720 mode: NO_STEREO
[ 2527.830120] [drm:drm_mode_debug_printmodeline] Modeline 97:"1920x1080i" 0 74250 1920 2008 2052 2200 1080 1084 1094 1125 0x40 0x20015
[ 2527.830131] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.830152] [drm:drm_mode_debug_printmodeline] Modeline 98:"1920x1080i" 0 74250 1920 2448 2492 2640 1080 1084 1094 1125 0x40 0x20015
[ 2527.830164] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.830185] [drm:drm_mode_debug_printmodeline] Modeline 99:"1920x1080" 0 74250 1920 2558 2602 2750 1080 1084 1089 1125 0x40 0x1c005
[ 2527.830196] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.830217] [drm:drm_mode_debug_printmodeline] Modeline 100:"1920x1080" 0 74250 1920 2558 2602 2750 1080 1084 1089 1125 0x40 0x4005
[ 2527.830229] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.830250] [drm:drm_mode_debug_printmodeline] Modeline 101:"1920x1080" 0 148500 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x1c005
[ 2527.830261] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.830282] [drm:drm_mode_debug_printmodeline] Modeline 102:"1920x1080" 0 148500 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x20005
[ 2527.830293] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.830322] [drm:drm_mode_debug_printmodeline] Modeline 103:"1920x1080" 0 148500 1920 2448 2492 2640 1080 1084 1089 1125 0x40 0x1c005
[ 2527.830334] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.830355] [drm:drm_mode_debug_printmodeline] Modeline 104:"1920x1080" 0 148500 1920 2448 2492 2640 1080 1084 1089 1125 0x40 0x20005
[ 2527.830366] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.830387] [drm:drm_mode_debug_printmodeline] Modeline 106:"1280x720" 0 74250 1280 1390 1430 1650 720 725 730 750 0x40 0x20005
[ 2527.830399] [drm:drm_mode_prune_invalid] Not using 1280x720 mode: NO_STEREO
[ 2527.830419] [drm:drm_mode_debug_printmodeline] Modeline 108:"1280x720" 0 74250 1280 1720 1760 1980 720 725 730 750 0x40 0x20005
[ 2527.830431] [drm:drm_mode_prune_invalid] Not using 1280x720 mode: NO_STEREO
[ 2527.830452] [drm:drm_mode_debug_printmodeline] Modeline 109:"1920x1080i" 0 74250 1920 2008 2052 2200 1080 1084 1094 1125 0x40 0x1c015
[ 2527.830463] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.830484] [drm:drm_mode_debug_printmodeline] Modeline 111:"1920x1080i" 0 74250 1920 2448 2492 2640 1080 1084 1094 1125 0x40 0x1c015
[ 2527.830496] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.830517] [drm:drm_mode_debug_printmodeline] Modeline 114:"1920x1080" 0 74250 1920 2558 2602 2750 1080 1084 1089 1125 0x40 0x20005
[ 2527.830528] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.830549] [drm:drm_mode_debug_printmodeline] Modeline 115:"1920x1080" 0 74250 1920 2448 2492 2640 1080 1084 1089 1125 0x40 0x1c005
[ 2527.830561] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.830582] [drm:drm_mode_debug_printmodeline] Modeline 116:"1920x1080" 0 74250 1920 2448 2492 2640 1080 1084 1089 1125 0x40 0x20005
[ 2527.830593] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.830614] [drm:drm_mode_debug_printmodeline] Modeline 117:"1920x1080" 0 74250 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x1c005
[ 2527.830625] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.830646] [drm:drm_mode_debug_printmodeline] Modeline 118:"1920x1080" 0 74250 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x20005
[ 2527.830667] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.830688] [drm:drm_mode_debug_printmodeline] Modeline 119:"1920x1080i" 0 74250 1920 2008 2052 2200 1080 1084 1094 1125 0x40 0x4015
[ 2527.830699] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.830842] [drm:drm_mode_debug_printmodeline] Modeline 120:"1920x1080i" 0 74250 1920 2448 2492 2640 1080 1084 1094 1125 0x40 0x4015
[ 2527.830854] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.830876] [drm:drm_mode_debug_printmodeline] Modeline 121:"1920x1080" 0 74250 1920 2448 2492 2640 1080 1084 1089 1125 0x40 0x4005
[ 2527.830887] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.830908] [drm:drm_mode_debug_printmodeline] Modeline 122:"1920x1080" 0 74250 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x4005
[ 2527.830919] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.830941] [drm:drm_mode_debug_printmodeline] Modeline 123:"1920x1080" 60 148352 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x5
[ 2527.830952] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: CLOCK_HIGH
[ 2527.830973] [drm:drm_mode_debug_printmodeline] Modeline 124:"1920x1080i" 60 74176 1920 2008 2052 2200 1080 1084 1094 1125 0x40 0x15
[ 2527.830985] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.831006] [drm:drm_mode_debug_printmodeline] Modeline 125:"1280x720" 60 74176 1280 1390 1430 1650 720 725 730 750 0x40 0x5
[ 2527.831026] [drm:drm_mode_prune_invalid] Not using 1280x720 mode: CLOCK_RANGE
[ 2527.831046] [drm:drm_mode_debug_printmodeline] Modeline 126:"640x480" 60 25200 640 656 752 800 480 490 492 525 0x40 0xa
[ 2527.831058] [drm:drm_mode_prune_invalid] Not using 640x480 mode: CLOCK_RANGE
[ 2527.831078] [drm:drm_mode_debug_printmodeline] Modeline 130:"720x480" 60 27027 720 736 798 858 480 489 495 525 0x40 0xa
[ 2527.831089] [drm:drm_mode_prune_invalid] Not using 720x480 mode: CLOCK_RANGE
[ 2527.831110] [drm:drm_mode_debug_printmodeline] Modeline 131:"1920x1080" 24 74176 1920 2558 2602 2750 1080 1084 1089 1125 0x40 0x5
[ 2527.831122] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: CLOCK_RANGE
[ 2527.831142] [drm:drm_mode_debug_printmodeline] Modeline 132:"1920x1080" 30 74176 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x5
[ 2527.831154] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: CLOCK_RANGE
[ 2527.831174] [drm:drm_mode_debug_printmodeline] Modeline 133:"720x480i" 60 13514 720 739 801 858 480 488 494 525 0x40 0x101a
[ 2527.831186] [drm:drm_mode_prune_invalid] Not using 720x480i mode: NO_INTERLACE
[ 2527.831207] [drm:drm_mode_debug_printmodeline] Modeline 134:"1920x1080i" 60 74176 1920 2008 2052 2200 1080 1084 1094 1125 0x40 0x20015
[ 2527.831218] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.831239] [drm:drm_mode_debug_printmodeline] Modeline 135:"1280x720" 60 74176 1280 1390 1430 1650 720 725 730 750 0x40 0x1c005
[ 2527.831251] [drm:drm_mode_prune_invalid] Not using 1280x720 mode: NO_STEREO
[ 2527.831272] [drm:drm_mode_debug_printmodeline] Modeline 136:"1280x720" 60 74176 1280 1390 1430 1650 720 725 730 750 0x40 0x4005
[ 2527.831283] [drm:drm_mode_prune_invalid] Not using 1280x720 mode: NO_STEREO
[ 2527.831304] [drm:drm_mode_debug_printmodeline] Modeline 140:"1920x1080" 24 74176 1920 2558 2602 2750 1080 1084 1089 1125 0x40 0x1c005
[ 2527.831316] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.831337] [drm:drm_mode_debug_printmodeline] Modeline 141:"1920x1080" 24 74176 1920 2558 2602 2750 1080 1084 1089 1125 0x40 0x4005
[ 2527.831357] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.831378] [drm:drm_mode_debug_printmodeline] Modeline 142:"1920x1080" 60 148352 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x1c005
[ 2527.831390] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.831411] [drm:drm_mode_debug_printmodeline] Modeline 143:"1920x1080" 60 148352 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x20005
[ 2527.831422] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.831443] [drm:drm_mode_debug_printmodeline] Modeline 145:"1280x720" 60 74176 1280 1390 1430 1650 720 725 730 750 0x40 0x20005
[ 2527.831455] [drm:drm_mode_prune_invalid] Not using 1280x720 mode: NO_STEREO
[ 2527.831476] [drm:drm_mode_debug_printmodeline] Modeline 146:"1920x1080i" 60 74176 1920 2008 2052 2200 1080 1084 1094 1125 0x40 0x1c015
[ 2527.831487] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.831509] [drm:drm_mode_debug_printmodeline] Modeline 149:"1920x1080" 24 74176 1920 2558 2602 2750 1080 1084 1089 1125 0x40 0x20005
[ 2527.831521] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.831542] [drm:drm_mode_debug_printmodeline] Modeline 150:"1920x1080" 30 74176 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x1c005
[ 2527.831553] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.831574] [drm:drm_mode_debug_printmodeline] Modeline 151:"1920x1080" 30 74176 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x20005
[ 2527.831585] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.831605] [drm:drm_mode_debug_printmodeline] Modeline 152:"1920x1080i" 60 74176 1920 2008 2052 2200 1080 1084 1094 1125 0x40 0x4015
[ 2527.831617] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
[ 2527.831637] [drm:drm_mode_debug_printmodeline] Modeline 153:"1920x1080" 30 74176 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x4005
[ 2527.831649] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: NO_STEREO
[ 2527.831682] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:29:HDMI-A-1] probed modes :
[ 2527.831703] [drm:drm_mode_debug_printmodeline] Modeline 76:"1920x1080" 30 74250 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x5
[ 2527.831731] [drm:drm_mode_debug_printmodeline] Modeline 75:"1920x1080" 25 74250 1920 2448 2492 2640 1080 1084 1089 1125 0x40 0x5
[ 2527.831750] [drm:drm_mode_debug_printmodeline] Modeline 74:"1920x1080" 24 74250 1920 2558 2602 2750 1080 1084 1089 1125 0x40 0x5
[ 2527.831770] [drm:drm_mode_debug_printmodeline] Modeline 45:"1280x720" 60 74250 1280 1390 1430 1650 720 725 730 750 0x40 0x5
[ 2527.831789] [drm:drm_mode_debug_printmodeline] Modeline 68:"1280x720" 60 74250 1280 1390 1430 1650 720 725 730 750 0x40 0x5
[ 2527.831808] [drm:drm_mode_debug_printmodeline] Modeline 44:"1280x720" 50 74250 1280 1720 1760 1980 720 725 730 750 0x40 0x5
[ 2527.831827] [drm:drm_mode_debug_printmodeline] Modeline 69:"1280x720" 50 74250 1280 1720 1760 1980 720 725 730 750 0x40 0x5
[ 2527.831846] [drm:drm_mode_debug_printmodeline] Modeline 63:"800x600" 75 49500 800 816 896 1056 600 601 604 625 0x40 0x5
[ 2527.831865] [drm:drm_mode_debug_printmodeline] Modeline 73:"720x576" 50 27000 720 732 796 864 576 581 586 625 0x40 0xa
[ 2527.831883] [drm:drm_mode_debug_printmodeline] Modeline 72:"720x480" 60 27000 720 736 798 858 480 489 495 525 0x40 0xa
[ 2527.832937] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:31:DSI-1]
[ 2527.833066] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:31:DSI-1] probed modes :
[ 2527.833092] [drm:drm_mode_debug_printmodeline] Modeline 37:"480x800" 50 33000 480 600 664 784 800 814 828 842 0x48 0x0
[ 2528.077108] [drm:drm_mode_addfb2] [FB:36]
[ 2528.945095] [drm:drm_mode_addfb2] [FB:38]
  • 分析“ drm”日志
    • 不支持包含以下关键字之一的HDMI监视器(HDMI-A-1/连接器29) 的模式: CLOCK_HIGH, CLOCK_RANGENO_INTERLACE
[ 2527.787272] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:29:HDMI-A-1]
[...]
[ 2527.828842] [drm:drm_mode_debug_printmodeline] Modeline 36:"1920x1080" 60 148500 1920 2008 2052 2200 1080 1084 1089 1125 0x48 0x5
[ 2527.828863] [drm:drm_mode_prune_invalid] Not using 1920x1080 mode: CLOCK_HIGH
[ 2527.828888] [drm:drm_mode_debug_printmodeline] Modeline 39:"1366x768" 60 85500 1366 1436 1579 1792 768 771 774 798 0x40 0x5
[ 2527.828901] [drm:drm_mode_prune_invalid] Not using 1366x768 mode: CLOCK_RANGE
[ 2527.828922] [drm:drm_mode_debug_printmodeline] Modeline 40:"1920x1080i" 50 74250 1920 2448 2492 2640 1080 1084 1094 1125 0x40 0x15
[ 2527.828934] [drm:drm_mode_prune_invalid] Not using 1920x1080i mode: NO_INTERLACE
  • 受支持的HDMI监视器的10种模式 (HDMI-A-1 /连接器 29) (根据 modetest output),也可以在这些“ drm”日志中看到
[ 2527.831682] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:29:HDMI-A-1] probed modes :
[ 2527.831703] [drm:drm_mode_debug_printmodeline] Modeline 76:"1920x1080" 30 74250 1920 2008 2052 2200 1080 1084 1089 1125 0x40 0x5
[ 2527.831731] [drm:drm_mode_debug_printmodeline] Modeline 75:"1920x1080" 25 74250 1920 2448 2492 2640 1080 1084 1089 1125 0x40 0x5
[ 2527.831750] [drm:drm_mode_debug_printmodeline] Modeline 74:"1920x1080" 24 74250 1920 2558 2602 2750 1080 1084 1089 1125 0x40 0x5
[ 2527.831770] [drm:drm_mode_debug_printmodeline] Modeline 45:"1280x720" 60 74250 1280 1390 1430 1650 720 725 730 750 0x40 0x5
[ 2527.831789] [drm:drm_mode_debug_printmodeline] Modeline 68:"1280x720" 60 74250 1280 1390 1430 1650 720 725 730 750 0x40 0x5
[ 2527.831808] [drm:drm_mode_debug_printmodeline] Modeline 44:"1280x720" 50 74250 1280 1720 1760 1980 720 725 730 750 0x40 0x5
[ 2527.831827] [drm:drm_mode_debug_printmodeline] Modeline 69:"1280x720" 50 74250 1280 1720 1760 1980 720 725 730 750 0x40 0x5
[ 2527.831846] [drm:drm_mode_debug_printmodeline] Modeline 63:"800x600" 75 49500 800 816 896 1056 600 601 604 625 0x40 0x5
[ 2527.831865] [drm:drm_mode_debug_printmodeline] Modeline 73:"720x576" 50 27000 720 732 796 864 576 581 586 625 0x40 0xa
[ 2527.831883] [drm:drm_mode_debug_printmodeline] Modeline 72:"720x480" 60 27000 720 736 798 858 480 489 495 525 0x40 0xa
  • 支持DSI显示器的唯一模式(DSI-1 /连接器 31) (根据 modetest output分析) ,也可以在这些“ drm”日志中看到
[ 2527.833066] [drm:drm_helper_probe_single_connector_modes] [CONNECTOR:31:DSI-1] probed modes :
[ 2527.833092] [drm:drm_mode_debug_printmodeline] Modeline 37:"480x800" 50 33000 480 600 664 784 800 814 828 842 0x48 0x0