Table of Contents

Ubuntu - GPU - DRM - Get DRM Info

Install

sudo apt install drm-info

Get DRM Info

drm_info

returns:

drmModeGetFB: Invalid argument
Node: /dev/dri/card0
├───Driver: amdgpu (AMD GPU) version 3.48.0 (20150101)
│   ├───DRM_CLIENT_CAP_STEREO_3D supported
│   ├───DRM_CLIENT_CAP_UNIVERSAL_PLANES supported
│   ├───DRM_CLIENT_CAP_ATOMIC supported
│   ├───DRM_CLIENT_CAP_ASPECT_RATIO supported
│   ├───DRM_CLIENT_CAP_WRITEBACK_CONNECTORS supported
│   ├───DRM_CAP_DUMB_BUFFER = 1
│   ├───DRM_CAP_VBLANK_HIGH_CRTC = 1
│   ├───DRM_CAP_DUMB_PREFERRED_DEPTH = 24
│   ├───DRM_CAP_DUMB_PREFER_SHADOW = 1
│   ├───DRM_CAP_PRIME = 3
│   ├───DRM_CAP_TIMESTAMP_MONOTONIC = 1
│   ├───DRM_CAP_ASYNC_PAGE_FLIP = 1
│   ├───DRM_CAP_CURSOR_WIDTH = 64
│   ├───DRM_CAP_CURSOR_HEIGHT = 64
│   ├───DRM_CAP_ADDFB2_MODIFIERS = 1
│   ├───DRM_CAP_PAGE_FLIP_TARGET = 0
│   ├───DRM_CAP_CRTC_IN_VBLANK_EVENT = 1
│   ├───DRM_CAP_SYNCOBJ = 1
│   └───DRM_CAP_SYNCOBJ_TIMELINE = 1
├───Device: PCI 1002:744c
├───Framebuffer size
│   ├───Width: [0, 16384]
│   └───Height: [0, 16384]
├───Connectors
│   ├───Connector 0
│   │   ├───Object ID: 80
│   │   ├───Type: DisplayPort
│   │   ├───Status: disconnected
│   │   ├───Encoders: {0}
│   │   └───Properties
│   │       ├───"EDID" (immutable): blob = 0
│   │       ├───"DPMS": enum {On, Standby, Suspend, Off} = Off
│   │       ├───"link-status": enum {Good, Bad} = Good
│   │       ├───"non-desktop" (immutable): range [0, 1] = 0
│   │       ├───"TILE" (immutable): blob = 0
│   │       ├───"CRTC_ID" (atomic): object CRTC = 0
│   │       ├───"scaling mode": enum {None, Full, Center, Full aspect} = None
│   │       ├───"underscan": enum {off, on, auto} = off
│   │       ├───"underscan hborder": range [0, 128] = 0
│   │       ├───"underscan vborder": range [0, 128] = 0
│   │       ├───"max bpc": range [8, 16] = 8
│   │       ├───"HDR_OUTPUT_METADATA": blob = 0
│   │       ├───"vrr_capable" (immutable): range [0, 1] = 0
│   │       ├───"freesync": range [0, 1] = 0
│   │       ├───"freesync_capable": range [0, 1] = 0
│   │       └───"subconnector" (immutable): enum {Unknown, VGA, DVI-D, HDMI, DP, Wireless, Native} = Unknown
│   ├───Connector 1
│   │   ├───Object ID: 85
│   │   ├───Type: DisplayPort
│   │   ├───Status: connected
│   │   ├───Physical size: 820x350 mm
│   │   ├───Subpixel: unknown
│   │   ├───Encoders: {1}
│   │   ├───Modes
│   │   │   ├───3440x1440@99.98 preferred driver phsync nvsync 
│   │   │   ├───3440x1440@96.04 driver phsync nvsync 
│   │   │   ├───3440x1440@84.96 driver phsync nvsync 
│   │   │   ├───3440x1440@74.98 driver phsync nvsync 
│   │   │   ├───3440x1440@72.03 driver phsync nvsync 
│   │   │   ├───3440x1440@60.01 driver phsync nvsync 
│   │   │   ├───3440x1440@59.97 driver phsync pvsync 
│   │   │   ├───3440x1440@50.01 driver phsync nvsync 
│   │   │   ├───3440x1440@48.00 driver phsync nvsync 
│   │   │   ├───1920x1200@99.98 driver phsync nvsync 
│   │   │   ├───1920x1080@60.00 driver nhsync nvsync 
│   │   │   ├───1920x1080@60.00 driver phsync pvsync 16:9 
│   │   │   ├───1920x1080@59.94 driver phsync pvsync 16:9 
│   │   │   ├───1920x1080@50.00 driver phsync pvsync 16:9 
│   │   │   ├───1600x1200@99.98 driver phsync nvsync 
│   │   │   ├───1680x1050@59.95 driver nhsync pvsync 
│   │   │   ├───1280x1024@75.03 driver phsync pvsync 
│   │   │   ├───1280x1024@60.02 driver phsync pvsync 
│   │   │   ├───1440x900@59.89 driver nhsync pvsync 
│   │   │   ├───1280x960@60.00 driver phsync pvsync 
│   │   │   ├───1280x800@99.98 driver phsync nvsync 
│   │   │   ├───1152x864@75.00 driver phsync pvsync 
│   │   │   ├───1280x720@60.00 driver phsync pvsync 
│   │   │   ├───1280x720@60.00 driver phsync pvsync 16:9 
│   │   │   ├───1280x720@59.94 driver phsync pvsync 16:9 
│   │   │   ├───1280x720@50.00 driver phsync pvsync 16:9 
│   │   │   ├───1440x576@50.00 driver nhsync nvsync 4:3 
│   │   │   ├───1440x576@50.00 driver nhsync nvsync 16:9 
│   │   │   ├───1024x768@75.03 driver phsync pvsync 
│   │   │   ├───1024x768@70.07 driver nhsync nvsync 
│   │   │   ├───1024x768@60.00 driver nhsync nvsync 
│   │   │   ├───1440x480@60.00 driver nhsync nvsync 16:9 
│   │   │   ├───1440x480@60.00 driver nhsync nvsync 4:3 
│   │   │   ├───1440x480@59.94 driver nhsync nvsync 16:9 
│   │   │   ├───1440x480@59.94 driver nhsync nvsync 4:3 
│   │   │   ├───800x600@75.00 driver phsync pvsync 
│   │   │   ├───800x600@72.19 driver phsync pvsync 
│   │   │   ├───800x600@60.32 driver phsync pvsync 
│   │   │   ├───800x600@56.25 driver phsync pvsync 
│   │   │   ├───720x576@50.00 driver nhsync nvsync 16:9 
│   │   │   ├───720x576@50.00 driver nhsync nvsync 4:3 
│   │   │   ├───720x480@60.00 driver nhsync nvsync 16:9 
│   │   │   ├───720x480@60.00 driver nhsync nvsync 4:3 
│   │   │   ├───720x480@59.94 driver nhsync nvsync 16:9 
│   │   │   ├───720x480@59.94 driver nhsync nvsync 4:3 
│   │   │   ├───640x480@75.00 driver nhsync nvsync 
│   │   │   ├───640x480@72.81 driver nhsync nvsync 
│   │   │   ├───640x480@66.67 driver nhsync nvsync 
│   │   │   ├───640x480@60.00 driver nhsync nvsync 4:3 
│   │   │   ├───640x480@59.94 driver nhsync nvsync 
│   │   │   ├───640x480@59.94 driver nhsync nvsync 4:3 
│   │   │   └───720x400@70.08 driver nhsync pvsync 
│   │   └───Properties
│   │       ├───"EDID" (immutable): blob = 89
│   │       ├───"DPMS": enum {On, Standby, Suspend, Off} = On
│   │       ├───"link-status": enum {Good, Bad} = Good
│   │       ├───"non-desktop" (immutable): range [0, 1] = 0
│   │       ├───"TILE" (immutable): blob = 0
│   │       ├───"CRTC_ID" (atomic): object CRTC = 69
│   │       ├───"scaling mode": enum {None, Full, Center, Full aspect} = None
│   │       ├───"underscan": enum {off, on, auto} = off
│   │       ├───"underscan hborder": range [0, 128] = 0
│   │       ├───"underscan vborder": range [0, 128] = 0
│   │       ├───"max bpc": range [8, 16] = 8
│   │       ├───"HDR_OUTPUT_METADATA": blob = 0
│   │       ├───"vrr_capable" (immutable): range [0, 1] = 1
│   │       ├───"freesync": range [0, 1] = 0
│   │       ├───"freesync_capable": range [0, 1] = 1
│   │       └───"subconnector" (immutable): enum {Unknown, VGA, DVI-D, HDMI, DP, Wireless, Native} = Native
│   ├───Connector 2
│   │   ├───Object ID: 90
│   │   ├───Type: HDMI-A
│   │   ├───Status: disconnected
│   │   ├───Encoders: {2}
│   │   └───Properties
│   │       ├───"EDID" (immutable): blob = 0
│   │       ├───"DPMS": enum {On, Standby, Suspend, Off} = Off
│   │       ├───"link-status": enum {Good, Bad} = Good
│   │       ├───"non-desktop" (immutable): range [0, 1] = 0
│   │       ├───"TILE" (immutable): blob = 0
│   │       ├───"CRTC_ID" (atomic): object CRTC = 0
│   │       ├───"scaling mode": enum {None, Full, Center, Full aspect} = None
│   │       ├───"underscan": enum {off, on, auto} = off
│   │       ├───"underscan hborder": range [0, 128] = 0
│   │       ├───"underscan vborder": range [0, 128] = 0
│   │       ├───"max bpc": range [8, 16] = 8
│   │       ├───"HDR_OUTPUT_METADATA": blob = 0
│   │       ├───"vrr_capable" (immutable): range [0, 1] = 0
│   │       ├───"freesync": range [0, 1] = 0
│   │       └───"freesync_capable": range [0, 1] = 0
│   └───Connector 3
│       ├───Object ID: 94
│       ├───Type: HDMI-A
│       ├───Status: disconnected
│       ├───Encoders: {3}
│       └───Properties
│           ├───"EDID" (immutable): blob = 0
│           ├───"DPMS": enum {On, Standby, Suspend, Off} = Off
│           ├───"link-status": enum {Good, Bad} = Good
│           ├───"non-desktop" (immutable): range [0, 1] = 0
│           ├───"TILE" (immutable): blob = 0
│           ├───"CRTC_ID" (atomic): object CRTC = 0
│           ├───"scaling mode": enum {None, Full, Center, Full aspect} = None
│           ├───"underscan": enum {off, on, auto} = off
│           ├───"underscan hborder": range [0, 128] = 0
│           ├───"underscan vborder": range [0, 128] = 0
│           ├───"max bpc": range [8, 16] = 8
│           ├───"HDR_OUTPUT_METADATA": blob = 0
│           ├───"vrr_capable" (immutable): range [0, 1] = 0
│           ├───"freesync": range [0, 1] = 0
│           └───"freesync_capable": range [0, 1] = 0
├───Encoders
│   ├───Encoder 0
│   │   ├───Object ID: 79
│   │   ├───Type: TMDS
│   │   ├───CRTCS: {0, 1, 2, 3}
│   │   └───Clones: {0}
│   ├───Encoder 1
│   │   ├───Object ID: 84
│   │   ├───Type: TMDS
│   │   ├───CRTCS: {0, 1, 2, 3}
│   │   └───Clones: {1}
│   ├───Encoder 2
│   │   ├───Object ID: 88
│   │   ├───Type: TMDS
│   │   ├───CRTCS: {0, 1, 2, 3}
│   │   └───Clones: {2}
│   ├───Encoder 3
│   │   ├───Object ID: 93
│   │   ├───Type: TMDS
│   │   ├───CRTCS: {0, 1, 2, 3}
│   │   └───Clones: {3}
│   ├───Encoder 4
│   │   ├───Object ID: 97
│   │   ├───Type: DP MST
│   │   ├───CRTCS: {0, 1, 2, 3}
│   │   └───Clones: {4}
│   ├───Encoder 5
│   │   ├───Object ID: 98
│   │   ├───Type: DP MST
│   │   ├───CRTCS: {0, 1, 2, 3}
│   │   └───Clones: {5}
│   ├───Encoder 6
│   │   ├───Object ID: 99
│   │   ├───Type: DP MST
│   │   ├───CRTCS: {0, 1, 2, 3}
│   │   └───Clones: {6}
│   └───Encoder 7
│       ├───Object ID: 100
│       ├───Type: DP MST
│       ├───CRTCS: {0, 1, 2, 3}
│       └───Clones: {7}
├───CRTCs
│   ├───CRTC 0
│   │   ├───Object ID: 69
│   │   ├───Mode: 3440x1440@99.98 preferred driver phsync nvsync 
│   │   └───Properties
│   │       ├───"ACTIVE" (atomic): range [0, 1] = 1
│   │       ├───"MODE_ID" (atomic): blob = 104
│   │       │   └───3440x1440@99.98 preferred driver phsync nvsync 
│   │       ├───"OUT_FENCE_PTR" (atomic): range [0, UINT64_MAX] = 0
│   │       ├───"VRR_ENABLED": range [0, 1] = 0
│   │       ├───"DEGAMMA_LUT": blob = 0
│   │       ├───"DEGAMMA_LUT_SIZE" (immutable): range [0, UINT32_MAX] = 4096
│   │       ├───"CTM": blob = 0
│   │       ├───"GAMMA_LUT": blob = 106
│   │       └───"GAMMA_LUT_SIZE" (immutable): range [0, UINT32_MAX] = 4096
│   ├───CRTC 1
│   │   ├───Object ID: 72
│   │   └───Properties
│   │       ├───"ACTIVE" (atomic): range [0, 1] = 0
│   │       ├───"MODE_ID" (atomic): blob = 0
│   │       ├───"OUT_FENCE_PTR" (atomic): range [0, UINT64_MAX] = 0
│   │       ├───"VRR_ENABLED": range [0, 1] = 0
│   │       ├───"DEGAMMA_LUT": blob = 0
│   │       ├───"DEGAMMA_LUT_SIZE" (immutable): range [0, UINT32_MAX] = 4096
│   │       ├───"CTM": blob = 0
│   │       ├───"GAMMA_LUT": blob = 0
│   │       └───"GAMMA_LUT_SIZE" (immutable): range [0, UINT32_MAX] = 4096
│   ├───CRTC 2
│   │   ├───Object ID: 75
│   │   └───Properties
│   │       ├───"ACTIVE" (atomic): range [0, 1] = 0
│   │       ├───"MODE_ID" (atomic): blob = 0
│   │       ├───"OUT_FENCE_PTR" (atomic): range [0, UINT64_MAX] = 0
│   │       ├───"VRR_ENABLED": range [0, 1] = 0
│   │       ├───"DEGAMMA_LUT": blob = 0
│   │       ├───"DEGAMMA_LUT_SIZE" (immutable): range [0, UINT32_MAX] = 4096
│   │       ├───"CTM": blob = 0
│   │       ├───"GAMMA_LUT": blob = 0
│   │       └───"GAMMA_LUT_SIZE" (immutable): range [0, UINT32_MAX] = 4096
│   └───CRTC 3
│       ├───Object ID: 78
│       └───Properties
│           ├───"ACTIVE" (atomic): range [0, 1] = 0
│           ├───"MODE_ID" (atomic): blob = 0
│           ├───"OUT_FENCE_PTR" (atomic): range [0, UINT64_MAX] = 0
│           ├───"VRR_ENABLED": range [0, 1] = 0
│           ├───"DEGAMMA_LUT": blob = 0
│           ├───"DEGAMMA_LUT_SIZE" (immutable): range [0, UINT32_MAX] = 4096
│           ├───"CTM": blob = 0
│           ├───"GAMMA_LUT": blob = 0
│           └───"GAMMA_LUT_SIZE" (immutable): range [0, UINT32_MAX] = 4096
└───Planes
    ├───Plane 0
    │   ├───Object ID: 42
    │   ├───CRTCs: {3}
    │   ├───Formats:
    │   │   ├───XRGB8888 (0x34325258)
    │   │   ├───ARGB8888 (0x34325241)
    │   │   ├───RGBA8888 (0x34324152)
    │   │   ├───XRGB2101010 (0x30335258)
    │   │   ├───XBGR2101010 (0x30334258)
    │   │   ├───ARGB2101010 (0x30335241)
    │   │   ├───ABGR2101010 (0x30334241)
    │   │   ├───Unknown (0x38345258)
    │   │   ├───Unknown (0x38344258)
    │   │   ├───Unknown (0x38345241)
    │   │   ├───Unknown (0x38344241)
    │   │   ├───XBGR8888 (0x34324258)
    │   │   ├───ABGR8888 (0x34324241)
    │   │   ├───RGB565 (0x36314752)
    │   │   ├───NV12 (0x3231564e)
    │   │   ├───P010 (0x30313050)
    │   │   ├───XRGB16161616F (0x48345258)
    │   │   ├───ARGB16161616F (0x48345241)
    │   │   ├───XBGR16161616F (0x48344258)
    │   │   └───ABGR16161616F (0x48344241)
    │   └───Properties
    │       ├───"type" (immutable): enum {Overlay, Primary, Cursor} = Primary
    │       ├───"FB_ID" (atomic): object framebuffer = 0
    │       ├───"IN_FENCE_FD" (atomic): srange [-1, INT32_MAX] = -1
    │       ├───"CRTC_ID" (atomic): object CRTC = 0
    │       ├───"CRTC_X" (atomic): srange [INT32_MIN, INT32_MAX] = 0
    │       ├───"CRTC_Y" (atomic): srange [INT32_MIN, INT32_MAX] = 0
    │       ├───"CRTC_W" (atomic): range [0, INT32_MAX] = 0
    │       ├───"CRTC_H" (atomic): range [0, INT32_MAX] = 0
    │       ├───"SRC_X" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_Y" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_W" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_H" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"IN_FORMATS""COLOR_ENCODING": enum {ITU-R BT.601 YCbCr, ITU-R BT.709 YCbCr, ITU-R BT.2020 YCbCr} = ITU-R BT.709 YCbCr
    │       ├───"COLOR_RANGE": enum {YCbCr limited range, YCbCr full range} = YCbCr limited range
    │       └───"rotation": bitmask {rotate-0, rotate-90, rotate-180, rotate-270} = (rotate-0 | rotate-90)
    ├───Plane 1
    │   ├───Object ID: 47
    │   ├───CRTCs: {2}
    │   ├───Formats:
    │   │   ├───XRGB8888 (0x34325258)
    │   │   ├───ARGB8888 (0x34325241)
    │   │   ├───RGBA8888 (0x34324152)
    │   │   ├───XRGB2101010 (0x30335258)
    │   │   ├───XBGR2101010 (0x30334258)
    │   │   ├───ARGB2101010 (0x30335241)
    │   │   ├───ABGR2101010 (0x30334241)
    │   │   ├───Unknown (0x38345258)
    │   │   ├───Unknown (0x38344258)
    │   │   ├───Unknown (0x38345241)
    │   │   ├───Unknown (0x38344241)
    │   │   ├───XBGR8888 (0x34324258)
    │   │   ├───ABGR8888 (0x34324241)
    │   │   ├───RGB565 (0x36314752)
    │   │   ├───NV12 (0x3231564e)
    │   │   ├───P010 (0x30313050)
    │   │   ├───XRGB16161616F (0x48345258)
    │   │   ├───ARGB16161616F (0x48345241)
    │   │   ├───XBGR16161616F (0x48344258)
    │   │   └───ABGR16161616F (0x48344241)
    │   └───Properties
    │       ├───"type" (immutable): enum {Overlay, Primary, Cursor} = Primary
    │       ├───"FB_ID" (atomic): object framebuffer = 0
    │       ├───"IN_FENCE_FD" (atomic): srange [-1, INT32_MAX] = -1
    │       ├───"CRTC_ID" (atomic): object CRTC = 0
    │       ├───"CRTC_X" (atomic): srange [INT32_MIN, INT32_MAX] = 0
    │       ├───"CRTC_Y" (atomic): srange [INT32_MIN, INT32_MAX] = 0
    │       ├───"CRTC_W" (atomic): range [0, INT32_MAX] = 0
    │       ├───"CRTC_H" (atomic): range [0, INT32_MAX] = 0
    │       ├───"SRC_X" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_Y" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_W" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_H" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"IN_FORMATS""COLOR_ENCODING": enum {ITU-R BT.601 YCbCr, ITU-R BT.709 YCbCr, ITU-R BT.2020 YCbCr} = ITU-R BT.709 YCbCr
    │       ├───"COLOR_RANGE": enum {YCbCr limited range, YCbCr full range} = YCbCr limited range
    │       └───"rotation": bitmask {rotate-0, rotate-90, rotate-180, rotate-270} = (rotate-0 | rotate-90)
    ├───Plane 2
    │   ├───Object ID: 52
    │   ├───CRTCs: {1}
    │   ├───Formats:
    │   │   ├───XRGB8888 (0x34325258)
    │   │   ├───ARGB8888 (0x34325241)
    │   │   ├───RGBA8888 (0x34324152)
    │   │   ├───XRGB2101010 (0x30335258)
    │   │   ├───XBGR2101010 (0x30334258)
    │   │   ├───ARGB2101010 (0x30335241)
    │   │   ├───ABGR2101010 (0x30334241)
    │   │   ├───Unknown (0x38345258)
    │   │   ├───Unknown (0x38344258)
    │   │   ├───Unknown (0x38345241)
    │   │   ├───Unknown (0x38344241)
    │   │   ├───XBGR8888 (0x34324258)
    │   │   ├───ABGR8888 (0x34324241)
    │   │   ├───RGB565 (0x36314752)
    │   │   ├───NV12 (0x3231564e)
    │   │   ├───P010 (0x30313050)
    │   │   ├───XRGB16161616F (0x48345258)
    │   │   ├───ARGB16161616F (0x48345241)
    │   │   ├───XBGR16161616F (0x48344258)
    │   │   └───ABGR16161616F (0x48344241)
    │   └───Properties
    │       ├───"type" (immutable): enum {Overlay, Primary, Cursor} = Primary
    │       ├───"FB_ID" (atomic): object framebuffer = 0
    │       ├───"IN_FENCE_FD" (atomic): srange [-1, INT32_MAX] = -1
    │       ├───"CRTC_ID" (atomic): object CRTC = 0
    │       ├───"CRTC_X" (atomic): srange [INT32_MIN, INT32_MAX] = 0
    │       ├───"CRTC_Y" (atomic): srange [INT32_MIN, INT32_MAX] = 0
    │       ├───"CRTC_W" (atomic): range [0, INT32_MAX] = 0
    │       ├───"CRTC_H" (atomic): range [0, INT32_MAX] = 0
    │       ├───"SRC_X" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_Y" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_W" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_H" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"IN_FORMATS""COLOR_ENCODING": enum {ITU-R BT.601 YCbCr, ITU-R BT.709 YCbCr, ITU-R BT.2020 YCbCr} = ITU-R BT.709 YCbCr
    │       ├───"COLOR_RANGE": enum {YCbCr limited range, YCbCr full range} = YCbCr limited range
    │       └───"rotation": bitmask {rotate-0, rotate-90, rotate-180, rotate-270} = (rotate-0 | rotate-90)
    ├───Plane 3
    │   ├───Object ID: 57
    │   ├───CRTCs: {0}
    │   ├───Formats:
    │   │   ├───XRGB8888 (0x34325258)
    │   │   ├───ARGB8888 (0x34325241)
    │   │   ├───RGBA8888 (0x34324152)
    │   │   ├───XRGB2101010 (0x30335258)
    │   │   ├───XBGR2101010 (0x30334258)
    │   │   ├───ARGB2101010 (0x30335241)
    │   │   ├───ABGR2101010 (0x30334241)
    │   │   ├───Unknown (0x38345258)
    │   │   ├───Unknown (0x38344258)
    │   │   ├───Unknown (0x38345241)
    │   │   ├───Unknown (0x38344241)
    │   │   ├───XBGR8888 (0x34324258)
    │   │   ├───ABGR8888 (0x34324241)
    │   │   ├───RGB565 (0x36314752)
    │   │   ├───NV12 (0x3231564e)
    │   │   ├───P010 (0x30313050)
    │   │   ├───XRGB16161616F (0x48345258)
    │   │   ├───ARGB16161616F (0x48345241)
    │   │   ├───XBGR16161616F (0x48344258)
    │   │   └───ABGR16161616F (0x48344241)
    │   └───Properties
    │       ├───"type" (immutable): enum {Overlay, Primary, Cursor} = Primary
    │       ├───"FB_ID" (atomic): object framebuffer = 102
    │       ├───"IN_FENCE_FD" (atomic): srange [-1, INT32_MAX] = -1
    │       ├───"CRTC_ID" (atomic): object CRTC = 69
    │       ├───"CRTC_X" (atomic): srange [INT32_MIN, INT32_MAX] = 0
    │       ├───"CRTC_Y" (atomic): srange [INT32_MIN, INT32_MAX] = 0
    │       ├───"CRTC_W" (atomic): range [0, INT32_MAX] = 3440
    │       ├───"CRTC_H" (atomic): range [0, INT32_MAX] = 1440
    │       ├───"SRC_X" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_Y" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_W" (atomic): range [0, UINT32_MAX] = 3440
    │       ├───"SRC_H" (atomic): range [0, UINT32_MAX] = 1440
    │       ├───"IN_FORMATS""COLOR_ENCODING": enum {ITU-R BT.601 YCbCr, ITU-R BT.709 YCbCr, ITU-R BT.2020 YCbCr} = ITU-R BT.709 YCbCr
    │       ├───"COLOR_RANGE": enum {YCbCr limited range, YCbCr full range} = YCbCr limited range
    │       └───"rotation": bitmask {rotate-0, rotate-90, rotate-180, rotate-270} = (rotate-0 | rotate-90)
    ├───Plane 4
    │   ├───Object ID: 62
    │   ├───CRTCs: {0, 1, 2, 3, 4, 5, 6, 7}
    │   ├───Formats:
    │   │   ├───XRGB8888 (0x34325258)
    │   │   ├───ARGB8888 (0x34325241)
    │   │   ├───RGBA8888 (0x34324152)
    │   │   ├───XBGR8888 (0x34324258)
    │   │   ├───ABGR8888 (0x34324241)
    │   │   └───RGB565 (0x36314752)
    │   └───Properties
    │       ├───"type" (immutable): enum {Overlay, Primary, Cursor} = Overlay
    │       ├───"FB_ID" (atomic): object framebuffer = 0
    │       ├───"IN_FENCE_FD" (atomic): srange [-1, INT32_MAX] = -1
    │       ├───"CRTC_ID" (atomic): object CRTC = 0
    │       ├───"CRTC_X" (atomic): srange [INT32_MIN, INT32_MAX] = 0
    │       ├───"CRTC_Y" (atomic): srange [INT32_MIN, INT32_MAX] = 0
    │       ├───"CRTC_W" (atomic): range [0, INT32_MAX] = 0
    │       ├───"CRTC_H" (atomic): range [0, INT32_MAX] = 0
    │       ├───"SRC_X" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_Y" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_W" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_H" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"IN_FORMATS" (immutable): blob = 63
    │       │   ├───Unknown (0x200000028a63f04)
    │       │   │   ├───XRGB8888 (0x34325258)
    │       │   │   ├───ARGB8888 (0x34325241)
    │       │   │   ├───RGBA8888 (0x34324152)
    │       │   │   ├───XBGR8888 (0x34324258)
    │       │   │   └───ABGR8888 (0x34324241)
    │       │   ├───Unknown (0x200000028a33f04)
    │       │   │   ├───XRGB8888 (0x34325258)
    │       │   │   ├───ARGB8888 (0x34325241)
    │       │   │   ├───RGBA8888 (0x34324152)
    │       │   │   ├───XBGR8888 (0x34324258)
    │       │   │   └───ABGR8888 (0x34324241)
    │       │   ├───Unknown (0x200000028a67f04)
    │       │   │   ├───XRGB8888 (0x34325258)
    │       │   │   ├───ARGB8888 (0x34325241)
    │       │   │   ├───RGBA8888 (0x34324152)
    │       │   │   ├───XBGR8888 (0x34324258)
    │       │   │   └───ABGR8888 (0x34324241)
    │       │   ├───Unknown (0x200000028a37f04)
    │       │   │   ├───XRGB8888 (0x34325258)
    │       │   │   ├───ARGB8888 (0x34325241)
    │       │   │   ├───RGBA8888 (0x34324152)
    │       │   │   ├───XBGR8888 (0x34324258)
    │       │   │   └───ABGR8888 (0x34324241)
    │       │   ├───Unknown (0x200000028a01f04)
    │       │   │   ├───XRGB8888 (0x34325258)
    │       │   │   ├───ARGB8888 (0x34325241)
    │       │   │   ├───RGBA8888 (0x34324152)
    │       │   │   ├───XBGR8888 (0x34324258)
    │       │   │   ├───ABGR8888 (0x34324241)
    │       │   │   └───RGB565 (0x36314752)
    │       │   ├───Unknown (0x200000028a63b04)
    │       │   │   ├───XRGB8888 (0x34325258)
    │       │   │   ├───ARGB8888 (0x34325241)
    │       │   │   ├───RGBA8888 (0x34324152)
    │       │   │   ├───XBGR8888 (0x34324258)
    │       │   │   └───ABGR8888 (0x34324241)
    │       │   ├───Unknown (0x200000028a33b04)
    │       │   │   ├───XRGB8888 (0x34325258)
    │       │   │   ├───ARGB8888 (0x34325241)
    │       │   │   ├───RGBA8888 (0x34324152)
    │       │   │   ├───XBGR8888 (0x34324258)
    │       │   │   └───ABGR8888 (0x34324241)
    │       │   ├───Unknown (0x200000028a67b04)
    │       │   │   ├───XRGB8888 (0x34325258)
    │       │   │   ├───ARGB8888 (0x34325241)
    │       │   │   ├───RGBA8888 (0x34324152)
    │       │   │   ├───XBGR8888 (0x34324258)
    │       │   │   └───ABGR8888 (0x34324241)
    │       │   ├───Unknown (0x200000028a37b04)
    │       │   │   ├───XRGB8888 (0x34325258)
    │       │   │   ├───ARGB8888 (0x34325241)
    │       │   │   ├───RGBA8888 (0x34324152)
    │       │   │   ├───XBGR8888 (0x34324258)
    │       │   │   └───ABGR8888 (0x34324241)
    │       │   ├───Unknown (0x200000028a01b04)
    │       │   │   ├───XRGB8888 (0x34325258)
    │       │   │   ├───ARGB8888 (0x34325241)
    │       │   │   ├───RGBA8888 (0x34324152)
    │       │   │   ├───XBGR8888 (0x34324258)
    │       │   │   ├───ABGR8888 (0x34324241)
    │       │   │   └───RGB565 (0x36314752)
    │       │   ├───Unknown (0x200000000000a04)
    │       │   └───DRM_FORMAT_MOD_LINEAR (0x0)
    │       │       ├───XRGB8888 (0x34325258)
    │       │       ├───ARGB8888 (0x34325241)
    │       │       ├───RGBA8888 (0x34324152)
    │       │       ├───XBGR8888 (0x34324258)
    │       │       ├───ABGR8888 (0x34324241)
    │       │       └───RGB565 (0x36314752)
    │       ├───"alpha": range [0, UINT16_MAX] = 65535
    │       ├───"pixel blend mode": enum {None, Pre-multiplied, Coverage} = Pre-multiplied
    │       └───"rotation": bitmask {rotate-0, rotate-90, rotate-180, rotate-270} = (rotate-0 | rotate-90)
    ├───Plane 5
    │   ├───Object ID: 67
    │   ├───CRTCs: {0}
    │   ├───Formats:
    │   │   └───ARGB8888 (0x34325241)
    │   └───Properties
    │       ├───"type" (immutable): enum {Overlay, Primary, Cursor} = Cursor
    │       ├───"FB_ID" (atomic): object framebuffer = 0
    │       ├───"IN_FENCE_FD" (atomic): srange [-1, INT32_MAX] = -1
    │       ├───"CRTC_ID" (atomic): object CRTC = 0
    │       ├───"CRTC_X" (atomic): srange [INT32_MIN, INT32_MAX] = 1435
    │       ├───"CRTC_Y" (atomic): srange [INT32_MIN, INT32_MAX] = 529
    │       ├───"CRTC_W" (atomic): range [0, INT32_MAX] = 64
    │       ├───"CRTC_H" (atomic): range [0, INT32_MAX] = 64
    │       ├───"SRC_X" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_Y" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_W" (atomic): range [0, UINT32_MAX] = 64
    │       ├───"SRC_H" (atomic): range [0, UINT32_MAX] = 64
    │       └───"IN_FORMATS" (immutable): blob = 68
    │           └───DRM_FORMAT_MOD_LINEAR (0x0)
    │               └───ARGB8888 (0x34325241)
    ├───Plane 6
    │   ├───Object ID: 70
    │   ├───CRTCs: {1}
    │   ├───Formats:
    │   │   └───ARGB8888 (0x34325241)
    │   └───Properties
    │       ├───"type" (immutable): enum {Overlay, Primary, Cursor} = Cursor
    │       ├───"FB_ID" (atomic): object framebuffer = 0
    │       ├───"IN_FENCE_FD" (atomic): srange [-1, INT32_MAX] = -1
    │       ├───"CRTC_ID" (atomic): object CRTC = 0
    │       ├───"CRTC_X" (atomic): srange [INT32_MIN, INT32_MAX] = 0
    │       ├───"CRTC_Y" (atomic): srange [INT32_MIN, INT32_MAX] = 0
    │       ├───"CRTC_W" (atomic): range [0, INT32_MAX] = 0
    │       ├───"CRTC_H" (atomic): range [0, INT32_MAX] = 0
    │       ├───"SRC_X" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_Y" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_W" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_H" (atomic): range [0, UINT32_MAX] = 0
    │       └───"IN_FORMATS" (immutable): blob = 71
    │           └───DRM_FORMAT_MOD_LINEAR (0x0)
    │               └───ARGB8888 (0x34325241)
    ├───Plane 7
    │   ├───Object ID: 73
    │   ├───CRTCs: {2}
    │   ├───Formats:
    │   │   └───ARGB8888 (0x34325241)
    │   └───Properties
    │       ├───"type" (immutable): enum {Overlay, Primary, Cursor} = Cursor
    │       ├───"FB_ID" (atomic): object framebuffer = 0
    │       ├───"IN_FENCE_FD" (atomic): srange [-1, INT32_MAX] = -1
    │       ├───"CRTC_ID" (atomic): object CRTC = 0
    │       ├───"CRTC_X" (atomic): srange [INT32_MIN, INT32_MAX] = 0
    │       ├───"CRTC_Y" (atomic): srange [INT32_MIN, INT32_MAX] = 0
    │       ├───"CRTC_W" (atomic): range [0, INT32_MAX] = 0
    │       ├───"CRTC_H" (atomic): range [0, INT32_MAX] = 0
    │       ├───"SRC_X" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_Y" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_W" (atomic): range [0, UINT32_MAX] = 0
    │       ├───"SRC_H" (atomic): range [0, UINT32_MAX] = 0
    │       └───"IN_FORMATS" (immutable): blob = 74
    │           └───DRM_FORMAT_MOD_LINEAR (0x0)
    │               └───ARGB8888 (0x34325241)
    └───Plane 8
        ├───Object ID: 76
        ├───CRTCs: {3}
        ├───Formats:
        │   └───ARGB8888 (0x34325241)
        └───Properties
            ├───"type" (immutable): enum {Overlay, Primary, Cursor} = Cursor
            ├───"FB_ID" (atomic): object framebuffer = 0
            ├───"IN_FENCE_FD" (atomic): srange [-1, INT32_MAX] = -1
            ├───"CRTC_ID" (atomic): object CRTC = 0
            ├───"CRTC_X" (atomic): srange [INT32_MIN, INT32_MAX] = 0
            ├───"CRTC_Y" (atomic): srange [INT32_MIN, INT32_MAX] = 0
            ├───"CRTC_W" (atomic): range [0, INT32_MAX] = 0
            ├───"CRTC_H" (atomic): range [0, INT32_MAX] = 0
            ├───"SRC_X" (atomic): range [0, UINT32_MAX] = 0
            ├───"SRC_Y" (atomic): range [0, UINT32_MAX] = 0
            ├───"SRC_W" (atomic): range [0, UINT32_MAX] = 0
            ├───"SRC_H" (atomic): range [0, UINT32_MAX] = 0
            └───"IN_FORMATS" (immutable): blob = 77
                └───DRM_FORMAT_MOD_LINEAR (0x0)
                    └───ARGB8888 (0x34325241)

References

https://drmdb.emersion.fr/