Changes between Version 10 and Version 11 of qt


Ignore:
Timestamp:
12/17/2021 12:19:09 AM (3 years ago)
Author:
Tim Harvey
Comment:

explain EGLFS_KMS_CONFIG file format in more detail

Legend:

Unmodified
Added
Removed
Modified
  • qt

    v10 v11  
    2727EGLFS forces the first top-level window (either a QWidget or a QQuickView) to become full screen and chosen to be the root widget window into which all other top-level widgets are composited. There are a number of env variables that can be used to configure EGLFS: see https://doc.qt.io/qt-5/embedded-linux.html#eglfs
    2828
    29 To use the EGLFS platform plugin with a KMS/DRM backend you need to define a screen configuration file customized to your board and display.
    30 
    31 Examples:
    32  * 1080p HDMI:
     29To use the EGLFS platform plugin with a KMS/DRM backend you need to define a screen configuration file customized to your board and display with some specific details:
     30 * device: the display device node on your board (ie /dev/dri/card0)
     31 * outputs: an array of outputs from /sys/class/drm
     32
     33Examples:
     34 * Ventana IMX6QDL 1080p HDMI:
     35  1. determine device/name/mode
     36{{{#!bash
     37root@focal-ventana:~# ls /sys/class/drm
     38card0  card1  card1-HDMI-A-1  card1-LVDS-1  renderD128  version
     39root@focal-ventana:~# cat /sys/class/drm/card1-HDMI-A-1/modes
     401920x1080
     41}}}
     42   - Note there are two outputs 'card1-HDMI-A-1' and 'card1-LVDS-1' (card0 is unused) corresponding to to the /dev/dri/card1 device and the mode
     43  1. create conf file:
    3344{{{#!bash
    3445cat << EOF > /etc/eglfs_hdmi.json
     
    4960}
    5061EOF
     62}}}
     63    - Note we disable LVDS-1 and configure HDMI-A-1 for our desired mode
     64  1. export env vars:
     65{{{#!bash
    5166export QT_QPA_EGLFS_KMS_CONFIG=/etc/eglfs_hdmi.json
    5267export QT_QPA_EGLFS_ALWAYS_SET_MODE=1
    5368export QT_QPA_PLATFORM=eglfs
    5469}}}
    55  * 1024x600 LVDS:
     70 * Ventana IMX6QDL 1024x600 LVDS:
     71  1. determine device/name/mode
     72{{{#!bash
     73root@focal-ventana:~# ls /sys/class/drm
     74card0  card1  card1-HDMI-A-1  card1-LVDS-1  renderD128  version
     75root@focal-ventana:~# cat /sys/class/drm/LVDS-1/modes
     761024x600
     77}}}
     78   - Note there are two outputs 'card1-HDMI-A-1' and 'card1-LVDS-1' (card0 is unused) corresponding to to the /dev/dri/card1 device and the mode
     79  1. create conf file:
    5680{{{#!bash
    5781cat << EOF > /etc/eglfs_lvds.json
     
    7296}
    7397EOF
     98}}}
     99    - Note we disable HDMI-A-1 and configure LVDS-1 for our desired mode
     100  1. export env vars:
     101{{{#!bash
    74102export QT_QPA_EGLFS_KMS_CONFIG=/etc/eglfs_lvds.json
    75103export QT_QPA_EGLFS_ALWAYS_SET_MODE=1