On NVidia Nano device, we have two displays and arrange them as a extended screen:
################################################################################
Screen 0: minimum 8 x 8, current 3840 x 2160, maximum 16384 x 16384
HDMI-0 connected 3840x1080+0+1080 (normal left inverted right x axis y axis) 600mm x 340mm
3840x1080 60.00*+
DP-0 connected primary 3840x1080+0+0 (normal left inverted right x axis y axis) 600mm x 340mm
3840x1080 60.00*+
################################################################################
when using TripleBuffer and ForceCompositionPipeline in xorg conf, on an extended screen, chromium rendering is broken (buffer does not flip).
Here is the configuration of xorg.conf:
################################################################################
//model: NX-4
//mode: extended
//resolution: auto “Autodetect”
//resolution: 3840x1080@60 “2x HD 1080 (60Hz)”
Section “ServerLayout”
Identifier “Default Layout”
Screen 0 “Screen0” 0 0
EndSection
Section “Monitor”
Identifier “Monitor0”
ModelName “DFP-0”
#VertRefresh
Option “Primary” “true”
Gamma 1.0 1.0 1.0
EndSection
Section “Monitor”
Identifier “Monitor1”
ModelName “DFP-1”
#VertRefresh
Gamma 1.0 1.0 1.0
VertRefresh 0.0
EndSection
Section “Device”
Identifier “Tegra0”
Driver “nvidia”
VendorName “NVIDIA Corporation”
BoardName “NVIDIA Tegra”
# Options needed by Chromium to work
Option "AllowEmptyInitialConfiguration" "true"
Option "TripleBuffer" "true"
# Chromium: End
Option "ForceCompositionPipeline" "true"
Screen 0
# extoutput: "HDMI-1" "/sys/kernel/debug/lt9611-dp-0"
# extoutput: "HDMI-2" "/sys/kernel/debug/lt9611-dp-1"
Option "Monitor-DP-0" "Monitor0"
# extoutput: "HDMI-3" "/sys/kernel/debug/lt9611-hdmi-2"
# extoutput: "HDMI-4" "/sys/kernel/debug/lt9611-hdmi-3"
Option "Monitor-HDMI-0" "Monitor1"
Option "SplitterMode" "extended"
EndSection
Section “Screen”
Identifier “Screen0”
Device “Tegra0”
Monitor “Desktop”
DefaultDepth 24
Option "UseDisplayDevice" "DP-0, HDMI-0"
Option "nvidiaXineramaInfoOrder" "DP-0, HDMI-0"
Option "MetaModes" "DP-0: nvidia-auto-select { Rotation = normal }, HDMI-0: nvidia-auto-select { Rotation = normal }"
Option "MetaModeOrientation" "DP-0 Above HDMI-0"
SubSection "Display"
# Full/Limited
Option "ColorRange" "Full"
# RGB/YCbCr444
Option "ColorSpace" "RGB"
Depth 24
EndSubSection
EndSection
################################################################################
Playing 2x2 pictures in chromium in kiosk mode will cause the screens to desynchronize.
Commenting out below flags, relaunching X, has 2x2 pictures render properly:
################################################################################
Option “TripleBuffer” “true”
Option “ForceCompositionPipeline” “true”
################################################################################
By setting use_compositing=true in /usr/share/xfwm4 can also avoid such issue.
However, the goal is using ForceCompositionPipeline without being impacted by the issue.
We consider it as an issue at the system level, Any advice on this topic ?