Fórum Root.cz
		Hlavní témata => Desktop => Téma založeno: Ladislav Nešněra  28. 09. 2019, 17:06:09
		
			
			- 
				V KDE (sddm) připojuji TV bez problémů jak v jejich klikátku (příloha), tak pomocí:
 $ xrandr --fb 1366x1536 --output LVDS-1 --primary --auto --mode 1366x768 --output HDMI-1 --auto --mode 1024x768 --rate 60.00 --above LVDS-1V GNOME Shell 3.30.2 (gdm) dokáži pomocí xrandr maximálně mít buď zapnutý interní display nebo jen TV. Journald reaguje na xrandr výpisem, kterému moc nerozumím (klikátko bude jen jeho GUI, neboť má výpis identický):
 zář 28 15:42:18 nix11 /nix/store/lkwjgsw0mls8c3ngp6fxcjniiqj5m9wf-gdm-3.30.3/libexec/gdm-x-session[1160]: (II) modeset(0): Allocate new frame buffer 1366x1536 stride
 zář 28 15:42:18 nix11 kernel: [drm:intel_cpu_fifo_underrun_irq_handler [i915]] *ERROR* CPU pipe A FIFO underrun
 zář 28 15:42:18 nix11 /nix/store/lkwjgsw0mls8c3ngp6fxcjniiqj5m9wf-gdm-3.30.3/libexec/gdm-x-session[1160]: (II) modeset(0): EDID vendor "LGD", prod id 685
 zář 28 15:42:18 nix11 /nix/store/lkwjgsw0mls8c3ngp6fxcjniiqj5m9wf-gdm-3.30.3/libexec/gdm-x-session[1160]: (II) modeset(0): Printing DDC gathered Modelines:
 zář 28 15:42:18 nix11 /nix/store/lkwjgsw0mls8c3ngp6fxcjniiqj5m9wf-gdm-3.30.3/libexec/gdm-x-session[1160]: (II) modeset(0): Modeline "1366x768"x0.0   69.30  1366 1398 1430 1486  768 770 774 782 -hsync -vsync (46.6 kHz eP)
 zář 28 15:42:18 nix11 /nix/store/lkwjgsw0mls8c3ngp6fxcjniiqj5m9wf-gdm-3.30.3/libexec/gdm-x-session[1160]: (--) modeset(0): HDMI max TMDS frequency 190000KHz
 zář 28 15:42:19 nix11 .gnome-shell-wr[1246]: Failed to use linear monitor configuration: No available CRTC for monitor 'unknown unknown' not found
 zář 28 15:42:19 nix11 /nix/store/lkwjgsw0mls8c3ngp6fxcjniiqj5m9wf-gdm-3.30.3/libexec/gdm-x-session[1160]: (II) modeset(0): Allocate new frame buffer 1366x768 stride
 zář 28 15:42:20 nix11 /nix/store/lkwjgsw0mls8c3ngp6fxcjniiqj5m9wf-gdm-3.30.3/libexec/gdm-x-session[1160]: (II) modeset(0): EDID vendor "LGD", prod id 685
 zář 28 15:42:20 nix11 /nix/store/lkwjgsw0mls8c3ngp6fxcjniiqj5m9wf-gdm-3.30.3/libexec/gdm-x-session[1160]: (II) modeset(0): Printing DDC gathered Modelines:
 zář 28 15:42:20 nix11 /nix/store/lkwjgsw0mls8c3ngp6fxcjniiqj5m9wf-gdm-3.30.3/libexec/gdm-x-session[1160]: (II) modeset(0): Modeline "1366x768"x0.0   69.30  1366 1398 1430 1486  768 770 774 782 -hsync -vsync (46.6 kHz eP)
 zář 28 15:42:20 nix11 /nix/store/lkwjgsw0mls8c3ngp6fxcjniiqj5m9wf-gdm-3.30.3/libexec/gdm-x-session[1160]: (--) modeset(0): HDMI max TMDS frequency 190000KHz
 zář 28 15:42:23 nix11 /nix/store/lkwjgsw0mls8c3ngp6fxcjniiqj5m9wf-gdm-3.30.3/libexec/gdm-x-session[1160]: (II) modeset(0): EDID vendor "LGD", prod id 685
 zář 28 15:42:23 nix11 /nix/store/lkwjgsw0mls8c3ngp6fxcjniiqj5m9wf-gdm-3.30.3/libexec/gdm-x-session[1160]: (II) modeset(0): Printing DDC gathered Modelines:
 zář 28 15:42:23 nix11 /nix/store/lkwjgsw0mls8c3ngp6fxcjniiqj5m9wf-gdm-3.30.3/libexec/gdm-x-session[1160]: (II) modeset(0): Modeline "1366x768"x0.0   69.30  1366 1398 1430 1486  768 770 774 782 -hsync -vsync (46.6 kHz eP)
 zář 28 15:42:23 nix11 /nix/store/lkwjgsw0mls8c3ngp6fxcjniiqj5m9wf-gdm-3.30.3/libexec/gdm-x-session[1160]: (--) modeset(0): HDMI max TMDS frequency 190000KHz
 
 Řádek s "kernel: [drm:intel_cpu_fifo_underrun_irq_handler [i915]]" jsem pod KDE zahlédl též, ale objevil se jen jednou. Pod Gnome při každém volání prvního příkazu. Výpis pod KDE je výrazně jiný:
 zář 28 16:17:22 nix11 org.kde.KScreen[878]: kscreen.xcb.helper: RRNotify_CrtcChange
 zář 28 16:17:22 nix11 org.kde.KScreen[878]: kscreen.xcb.helper:         CRTC:  64
 zář 28 16:17:22 nix11 org.kde.KScreen[878]: kscreen.xcb.helper:         Mode:  0
 zář 28 16:17:22 nix11 org.kde.KScreen[878]: kscreen.xcb.helper:         Rotation:  "Rotate_0"
 zář 28 16:17:22 nix11 org.kde.KScreen[878]: kscreen.xcb.helper:         Geometry:  0 0 0 0
 zář 28 16:17:22 nix11 org.kde.KScreen[878]: kscreen.xcb.helper: RRNotify_OutputChange
 zář 28 16:17:22 nix11 org.kde.KScreen[878]: kscreen.xcb.helper:         Output:  67
 zář 28 16:17:22 nix11 org.kde.KScreen[878]: kscreen.xcb.helper:         CRTC:  0
 zář 28 16:17:22 nix11 org.kde.KScreen[878]: kscreen.xcb.helper:         Mode:  0
 zář 28 16:17:22 nix11 org.kde.KScreen[878]: kscreen.xcb.helper:         Rotation:  "Rotate_0"
Nějaké doporučení? (kromě opuštění Gnome?  ;D)
- 
				Zkus tu virtuální plochu 1366x1536 nedávat do xrandr, ale do xorg.conf - https://www.maketecheasier.com/how-to-setup-dual-monitors-with-xrandr/
			
- 
				Nevyznám se v KDE, ale nedávno jsem se snažil trochu ladit jednu nebo dvě multi-display sestavy... bohužel mám pocit, že se x.org dost vyvíjí, včetně stylů konfigurace xorg.conf, takže některé tutorialy jsou zastaralé apod... Začněme ale od začátku.
 
 Osobně bych začal explicitním zapnutím kýžených dvou (či více) výstupů natvrdo pomocí přesně mířených argumentů na kernel cmdline = je potřeba je přidat do konfigurace bootloaderu. Případně v Grubu je možnost je přidat přímo při bootu jednorázově = otestovat "nasucho". Následně např. v Debianu/Ubuntu lze přidat trvale do /etc/default/grub (a update-grub). Příklad z nějaké mojí konfigurace:
 
 video=eDP-1:e video=eDP-1:1280x1024@60 video=HDMI-A-2:e video=HDMI-A-2:1920x1080@50
 
 Přesná jména výstupů lze najít s trochou štěstí v dmesg. Pokud je driver [drm] při bootu nezmíní, možná bude třeba zvýšit debug level (https://01.org/linuxgraphics/documentation/how-report-bugs). Hledejte zmínky o cmdline argumentu drm.debug= . Aktuální popis jednotlivých bitwise voleb (pro čerstvé vanilkové jádro) je k nalezení zřejmě jedině ve zdrojákách kernelu (https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/gpu/drm/drm_drv.c#n59). Tzn. je třeba se z DMESG domáknout, jak se jmenují jednotlivé výstupní porty.
 
 Jakmile se Vám tohle podaří, jako další krok bych zkusil nechat xserver, ať se v tom zorientuje sám = z xorg.conf bych smazal veškerou konfiguraci grafických výstupů = ať zabere automatika xserveru.
 
 Pokud automatika nezabere, tak se tomu dá pomoct v xorg.conf. Např. já mám na tomtéž stroji následující /etc/X11/xorg.conf.d/20-intel.conf :
 
 Section "Monitor"
 Identifier    "eDP1"
 Option        "LeftOf" "HDMI2"
 Option        "DPMS" "false"
 EndSection
 
 Section "Monitor"
 Identifier    "HDMI2"
 Modeline      "1920x1080_50" 141.50  1920 2032 2232 2544  1080 1083 1088 1114 -hsync +vsync
 Modeline      "1920x1080_60" 173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync
 Modeline      "1920x1080_24" 63.00  1920 1976 2160 2400  1080 1083 1088 1098 -hsync +vsync
 Option        "PreferredMode" "1920x1080_50"
 Option        "RightOf" "eDP1"
 Option        "DPMS" "false"
 EndSection
 
 Section "Screen"
 Identifier    "Screen0"
 Device        "Device0"
 Monitor       "HDMI2"
 DefaultDepth   24
 SubSection   "Display"
 Depth       24
 #Modes      "1920x1080_50" "1920x1080_60" "1920x1080_24"
 EndSubSection
 EndSection
 
 Section "Device"
 Identifier    "Device0"
 Driver        "intel"
 BusID         "0:2:0"
 Option        "Monitor-eDP-1" "eDP1"
 Option        "Monitor-HDMI-2" "HDMI2"
 Option        "TearFree" "true"
 EndSection
 
 
 Je tam pár věcí, které nepotřebujete...
 Všimněte si, že jména zařízení v X.org jsou podobná jako v kernelovém DRM ovladači, ale kupodivu nikoli zcela stejná...
 
 Bohužel nerozumím Xrandr = s tím neporadím.
- 
				Díky za reakce  :)
 Nakonec jsem to obešel úkrokem stranou - použil jsem Wayland. Tam vše, k mému velkému překvapení, naprosto bez problém :o