Tool/software: Linux
I'm using the AM572x EVM, PLSDK = 05.02.00.10 using both the HDMI and on board LCD. We would like to run our application using linuxfb for various performance reasons, with two applications running full screen, one on the LCD and one on the HDMI. We are working on a custom board and will migrate to two LCD outputs.
I read in a related post that fbdev is deprecated and to use DRM instead. However, any Qt application I run will crash when I try this. Below is the Qt debug output and my modetest output. Any advice on what I am doing wrong?
# export QT_LOGGING_RULES=*=true # export QT_QPA_FB_DRM=1 # /usr/share/qt5/examples/widgets/dialogs/tabdialog/tabdialog -platform linuxfb qt.qpa.eglfs.kms: Loading KMS setup from "/etc/qt5/eglfs_kms_cfg.json" qt.qpa.eglfs.kms: Requested configuration (some settings may be ignored): hwcursor: false pbuffers: true separateScreens: false virtualDesktopLayout: 0 outputs: QMap(("HDMI1", QMap(("mode", QVariant(QString, "1366x768"))("name", QVariant(QString, "HDMI1"))("touchDevice", QVariant(QString, "/dev/input/event2"))("virtualIndex", QVariant(double, 1))))("UNKNOWN1", QMap(("mode", QVariant(QString, "800x480"))("name", QVariant(QString, "UNKNOWN1"))("touchDevice", QVariant(QString, "/dev/input/event1"))("virtualIndex", QVariant(double, 0))))) qt.qpa.eglfs.kms: Using backend-provided DRM device /dev/dri/card0 qt.qpa.fb: DRM device /dev/dri/card0 opened qt.qpa.eglfs.kms: "UNKNOWN1" mode count: 1 qt.qpa.eglfs.kms: mode 0 800 x 480 @ 60 hz qt.qpa.eglfs.kms: Selected mode 0 : 800 x 480 @ 60 hz for output "UNKNOWN1" getPlane: Plane for crtc 39 not found qt.qpa.eglfs.kms: "HDMI1" mode count: 1 qt.qpa.eglfs.kms: mode 0 1366 x 768 @ 60 hz qt.qpa.eglfs.kms: Selected mode 0 : 1366 x 768 @ 60 hz for output "HDMI1" getPlane: Plane for crtc 47 not found qt.qpa.eglfs.kms: Sorted screen list: QVector() Segmentation fault (core dumped) # modetest trying to open device 'i915'...failed trying to open device 'amdgpu'...failed trying to open device 'radeon'...failed trying to open device 'nouveau'...failed trying to open device 'vmwgfx'...failed trying to open device 'omapdrm'...done Encoders: id crtc type possible crtcs possible clones 34 39 TMDS 0x00000001 0x00000000 40 0 TMDS 0x00000002 0x00000000 Connectors: id encoder status name size (mm) modes encoders 35 34 connected DPI-1 0x0 1 34 modes: name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot) 800x480 60 800 1010 1040 1056 480 502 515 525 33000 flags: nhsync, nvsync; 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: 0 5 link-status: flags: enum enums: Good=0 Bad=1 value: 0 41 0 connected HDMI-A-1 340x190 1 40 modes: name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot) 1366x768 60 1366 1406 1438 1456 768 771 777 793 69300 flags: nhsync, nvsync; type: preferred, driver props: 1 EDID: flags: immutable blob blobs: value: 00ffffffffffff0006afec1000000000 001601049022137802bbf59455549027 23505400000001010101010101010101 010101010101121b565a500019302820 360058c1100000180000000f00000000 00000000000000000020000000fe0041 554f0a202020202020202020000000fe 004231353658545430312e30200a004a 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 CRTCs: id fb pos size 39 60 (0,0) (800x480) 800x480 60 800 1010 1040 1056 480 502 515 525 33000 flags: nhsync, nvsync; type: preferred, driver props: 23 CTM: flags: blob blobs: value: 24 GAMMA_LUT: flags: blob blobs: value: 25 GAMMA_LUT_SIZE: flags: immutable range values: 0 4294967295 value: 256 30 background: flags: range values: 0 16777215 value: 0 31 trans-key-mode: flags: enum enums: disable=0 gfx-dst=1 vid-src=2 value: 0 32 trans-key: flags: range values: 0 16777215 value: 0 33 alpha_blender: flags: range values: 0 1 value: 0 37 rotation: flags: bitmask values: rotate-0=0x1 rotate-90=0x2 rotate-180=0x4 rotate-270=0x8 reflect-x=0x10 reflect-y=0x20 value: 1 27 zorder: flags: range values: 0 3 value: 0 47 0 (0,0) (0x0) 0 0 0 0 0 0 0 0 0 0 flags: ; type: props: 23 CTM: flags: blob blobs: value: 24 GAMMA_LUT: flags: blob blobs: value: 25 GAMMA_LUT_SIZE: flags: immutable range values: 0 4294967295 value: 256 30 background: flags: range values: 0 16777215 value: 0 31 trans-key-mode: flags: enum enums: disable=0 gfx-dst=1 vid-src=2 value: 0 32 trans-key: flags: range values: 0 16777215 value: 0 33 alpha_blender: flags: range values: 0 1 value: 0 43 rotation: flags: bitmask values: rotate-0=0x1 rotate-90=0x2 rotate-180=0x4 rotate-270=0x8 reflect-x=0x10 reflect-y=0x20 value: 1 27 zorder: flags: range values: 0 3 value: 0 Planes: id crtc fb CRTC x,y x,y gamma size possible crtcs 36 39 60 0,0 0,0 0 0x00000003 formats: RX12 AR12 RG16 XR24 RG24 AR24 RA24 RX24 AR15 XR12 RA12 XR15 props: 6 type: flags: immutable enum enums: Overlay=0 Primary=1 Cursor=2 value: 1 37 rotation: flags: bitmask values: rotate-0=0x1 rotate-90=0x2 rotate-180=0x4 rotate-270=0x8 reflect-x=0x10 reflect-y=0x20 value: 1 27 zorder: flags: range values: 0 3 value: 0 38 zpos: flags: range values: 0 3 value: 0 28 global_alpha: flags: range values: 0 255 value: 255 29 pre_mult_alpha: flags: range values: 0 1 value: 0 42 0 0 0,0 0,0 0 0x00000003 formats: RG16 RX12 YUYV AR15 RA24 NV12 RA12 XR24 RG24 UYVY AR12 XR15 AR24 XR12 RX24 props: 6 type: flags: immutable enum enums: Overlay=0 Primary=1 Cursor=2 value: 1 43 rotation: flags: bitmask values: rotate-0=0x1 rotate-90=0x2 rotate-180=0x4 rotate-270=0x8 reflect-x=0x10 reflect-y=0x20 value: 1 27 zorder: flags: range values: 0 3 value: 0 44 zpos: flags: range values: 0 3 value: 0 28 global_alpha: flags: range values: 0 255 value: 255 29 pre_mult_alpha: flags: range values: 0 1 value: 0 48 0 0 0,0 0,0 0 0x00000003 formats: RG16 RX12 YUYV AR15 RA24 NV12 RA12 XR24 RG24 UYVY AR12 XR15 AR24 XR12 RX24 props: 6 type: flags: immutable enum enums: Overlay=0 Primary=1 Cursor=2 value: 0 49 rotation: flags: bitmask values: rotate-0=0x1 rotate-90=0x2 rotate-180=0x4 rotate-270=0x8 reflect-x=0x10 reflect-y=0x20 value: 1 27 zorder: flags: range values: 0 3 value: 2 50 zpos: flags: range values: 0 3 value: 2 28 global_alpha: flags: range values: 0 255 value: 255 29 pre_mult_alpha: flags: range values: 0 1 value: 0 53 0 0 0,0 0,0 0 0x00000003 formats: RG16 RX12 YUYV AR15 RA24 NV12 RA12 XR24 RG24 UYVY AR12 XR15 AR24 XR12 RX24 props: 6 type: flags: immutable enum enums: Overlay=0 Primary=1 Cursor=2 value: 0 54 rotation: flags: bitmask values: rotate-0=0x1 rotate-90=0x2 rotate-180=0x4 rotate-270=0x8 reflect-x=0x10 reflect-y=0x20 value: 1 27 zorder: flags: range values: 0 3 value: 3 55 zpos: flags: range values: 0 3 value: 3 28 global_alpha: flags: range values: 0 255 value: 255 29 pre_mult_alpha: flags: range values: 0 1 value: 0 Frame buffers: id size pitch