Alright, I got it. For whatever reason, even in editing gdm3's monitor.conf and disabling wayland, gdm3 still gives a black screen. I switched to lightdm (the display manager I prefer anyway, thankfully) and xfce4 starts without issues. Gnome still starts with a black screen, and you have to suspend to RAM and resume to get to the desktop. By the way, brightness control works as well.
Here's the list of changes:
/etc/X11/xorg.conf.d/20-fhdmod.conf to read:
Code: Select all
Section "Device"
Identifier "IntelCard"
BusID "PCI:0:2:0"
Driver "intel"
Option "DRI" "3"
Option "ZaphodHeads" "DP-3"
Option "Virtualheads" "0"
#Option "kmsdev" "/dev/dri/card0"
EndSection
~/.config/monitors.xml to read:
Code: Select all
<monitors version="1">
<configuration>
<clone>yes</clone>
<output name="DP3">
<vendor>SHP</vendor>
<product>0x141f</product>
<serial>0x00000000</serial>
<width>1920</width>
<height>1080</height>
<rate>59.933879852294922</rate>
<x>0</x>
<y>0</y>
<rotation>normal</rotation>
<reflect_x>no</reflect_x>
<reflect_y>no</reflect_y>
<primary>no</primary>
<presentation>no</presentation>
<underscanning>no</underscanning>
</output>
<output name="LVDS1">
<vendor>ZLX</vendor>
<product>Dummy display</product>
<serial>D2U040082 </serial>
<width>1920</width>
<height>1080</height>
<rate>60.034385681152344</rate>
<x>0</x>
<y>0</y>
<rotation>normal</rotation>
<reflect_x>no</reflect_x>
<reflect_y>no</reflect_y>
<primary>yes</primary>
<presentation>no</presentation>
<underscanning>no</underscanning>
</output>
</configuration>
</monitors>
To allow lightdm to be seen at login, I copied this to its monitor.conf:
Code: Select all
cp ~/.config/monitors.xml /var/lib/lightdm/.config/monitors.xml
Thanks to everyone who helped, now I won't have to recompile the kernel every time a security update gets released.