Last month, I replaced my fine Radeon HD 7870 with a newer RX 480 video card. This past week, I got a pair of LG 4K monitors using Vivo desk arms at the same time as Fedora 25 upgrades. Nice holiday timing.
I still have an HP LP2475w monitor hanging off the HDMI port with these new 4K monitors on DisplayPort. That introduced some nifty xrandr handling — which cannot be duplicated in gnome-control-center — to allow my over-under configuration to be to the right of the former display:
$ cat > bin/HiDPI.sh <<EOD #!/bin/sh gsettings set org.gnome.desktop.interface cursor-size 48 echo before: xrandr echo echo changing: xrandr --output DVI-D-1 --scale 2x2 --mode 1920x1200 --fb 7680x2400 --pos 0x800 xrandr --output DP-3 --scale 1x1 --pos 3840x0 --primary xrandr --output DP-2 --scale 1x1 --pos 3840x2160 echo echo after: xrandr EOD $ chmod +x bin/HiDPI.sh
Then, adding this script to run on session startup:
$ cd .config/autostart $ cp /usr/share/applications/org.gnome.Terminal.desktop HiDPI.desktop $ vim HiDPI.desktop Name=HiDPI Exec=HiDPI.sh
After noticing some distinct mouse flickering, my googling led me to understand that a new Xorg driver amdgpu is available for Fedora 25:
$ sudo dnf install xorg-x11-drv-amdgpu $ sudo reboot $ grep AMDGPU -m10 .local/share/xorg/Xorg.0.log $ grep DRI -m10 .local/share/xorg/Xorg.0.log
Yikes!! The new driver renamed the above xrandr ports differently. No worries, simply replaced them with DVI-D-0, DisplayPort-2, and DisplayPort-1 respectively. 😎
Unfortunately, there is still some mouse flickering, but looks like that’s a Wayland and not a driver issue.
The mouse flicker issue is corrected for me by editing the /etc/X11/xorg.conf.d/20-amdgpu.conf to enable use of its tear-free option:
I added a commented-out option for the software cursor in case the TearFree did not work, you know, one change at a time?
On occasion when Gnome Shell sleeps and powers down my display panels, its wake up sequence rearranges the layout to something terribly unusable. I crafted another autostart script to run in the background and monitor D-Bus for a wakeup emit and reinvoke my HiDPSH.sh preferences. So far, it’s been working consistently for me: