Modetest によるディスプレイ リンク アップ

マルチメディア ユーザー ガイド (UG1449)

Document ID
UG1449
Release Date
2022-04-21
Revision
1.4 日本語

libdrm ライブラリに含まれる modetest ツールを使用すると、次のことを実行できます。

  • すべてのディスプレイ機能をリスト表示する: CRTC、エンコーダーおよびコネクタ (DP、HDMI、SDI など)、プレーン、モードなど
  • 基本的なテストの実行: テスト パターンの表示、2 レイヤーの表示、vsync テストの実行
  • ビデオ モードの指定: 解像度とリフレッシュ レート
注記: modetest ツールの詳細は、https://wiki.st.com/stm32mpu/wiki/DRM_KMS_overview#cite_note-mesa_libdrm-3 を参照してください。

次のコマンドを実行して、bus_id を確認します。

cat /sys/kerne/debug/dri/<corresponding id>/name

modetest コマンドの -D オプションで bus_id を指定して実行すると、HDMI コネクタのステータスおよびサポートされる最大解像度、フレーム レート、およびサポートするプレーン フォーマットが表示されます。次に、HDMI-Tx コマンドの例を示します。

$ modetest -D a0070000.v_mix
Encoders:
id      crtc    type    possible crtcs  possible clones 
43      42      TMDS    0x00000001      0x00000000

Connectors:
id      encoder status          name            size (mm)       modes   encoders
44      43      connected       HDMI-A-1        700x390         49      43
  modes:
        name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
  3840x2160 60.00 3840 3888 3920 4000 2160 2163 2168 2222 533250 flags: phsync, nvsync; type: 
                                                                            preferred, driver
  3840x2160 60.00 3840 4016 4104 4400 2160 2168 2178 2250 594000 flags: phsync, pvsync; type: driver
  3840x2160 59.94 3840 4016 4104 4400 2160 2168 2178 2250 593407 flags: phsync, pvsync; type: driver
  3840x2160 50.00 3840 4896 4984 5280 2160 2168 2178 2250 594000 flags: phsync, pvsync; type: driver
  3840x2160 30.00 3840 4016 4104 4400 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
  3840x2160 30.00 3840 4016 4104 4400 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver

上記のコマンドを実行すると、プレーンの数、フォーマット、およびこれらプレーンの DRM プロパティに関する情報も表示されます。

Planes:
id      crtc    fb      CRTC x,y        x,y     gamma size      possible crtcs
41      0       0       0,0             0,0     0               0x00000001
  formats: BG24
  props:
        8 type:
                flags: immutable enum
                enums: Overlay=0 Primary=1 Cursor=2
                value: 1
        17 FB_ID:
                flags: object
                value: 0
        18 IN_FENCE_FD:
                flags: signed range
                values: -1 2147483647
                value: -1
        20 CRTC_ID:
                flags: object
                value: 0
        13 CRTC_X:
                flags: signed range
                values: -2147483648 2147483647
                value: 0
        14 CRTC_Y:
                flags: signed range
                values: -2147483648 2147483647
                value: 0
        15 CRTC_W:
                flags: range
                values: 0 2147483647
                value: 3840
        16 CRTC_H:
                flags: range
                values: 0 2147483647
                value: 2160
        9 SRC_X:
                flags: range
                values: 0 4294967295
                value: 0
        10 SRC_Y:
                flags: range
                values: 0 4294967295
                value: 0
        11 SRC_W:
                flags: range
                values: 0 4294967295
                value: 251658240
        12 SRC_H:
                flags: range
                values: 0 4294967295
                value: 141557760

接続された HDMI スクリーンでカラー パターンを実行するには、次のコマンドを実行します。

$modetest -D <bus-id> -s <connector_id>[,<connector_id>][@<crtc_id>]:<mode>[-<vrefresh>][@<format>]
$modetest -D a0070000.v_mix -s 41:3840x2160-60@BG2