You are not logged in.

#1 2019-02-01 21:39:01

atctwo
Member
Registered: 2019-02-01
Posts: 1

AMDGPU: Blank screens at high resolutions

Hi.
I have been using Arch since April last year, on an XPS 13 (9360).  To connect it to an external monitor, I used a Thunderbolt 3 to USB and HDMI adaptor, which let me run a monitor off the laptop's integrated graphics.  The monitor only has a VGA input, so I used an HDMI to VGA adaptor, and it was running fine.  The laptop's screen was running at 3200 x 1800, and the monitor was running at 1920 x 1080 (its highest resolution).  I was running Budgie (based on GNOME), and I still am.

I recently invested in an eGPU so that I could run programs that required more graphics processing.  The eGPU is a Razer Core X, and in it I have an RX 550 (MSI Radeon RX 550 AERO ITX OC 2 GDDR5).  The monitor was connected to the HDMI port using the HDMI to VGA adaptor (as the RX550 has no VGA output). 
This worked out of the box on Windows, but I had to play around a bit to get it working on Arch.  I used tbtadm to authorise the eGPU, but I still couldn't get it working (the laptop screen worked, but I couldn't get any output from the RX 550).  I messed around with amdgpu and amdgpu-pro, but settled on amdgpu.  Eventually, I added the following kernel parameters to the Arch entry in my grub.cfg, and it worked-ish.

echo	'Loading Linux linux ...'
linux	/boot/vmlinuz-linux root=UUID=c61f4421-b75e-4c62-99fe-7d3e59c53be3 rw amdgpu.ppfeaturemask=1 amdgpu.dc=1amdgpu.si_support=0 amdgpu.cik_support=0 amdgpu.msi=1 amdgpu.exp_hw_support=1 amdgpu.dpm=0 amdgpu.powerplay=0
echo	'Loading initial ramdisk ...'
initrd	/boot/intel-ucode.img /boot/initramfs-linux.img

Full grub.cfg

While the GPU was actually displaying something, the resolution was really low (1280x720).  I tried changing the display settings in GNOME Settings (to 1920x1080), and the screen just went blank.  I tried doing the same using xrandr's command line interface, with the same result.

I introduced a TV from 2008 with HDMI inputs.  When I used it on a Mac mini, it by default used 1360x768, but macOS was able to get it to display in 1920x1080 (possibly using scaling?).  When connected to the eGPU's HDMI output (instead of the VGA monitor), Windows detected 1360x768, but was able to run it at 1920x1080.  On Arch, it detected 1360x768, so I tried GNOME Settings and xrandr to set the resolution to 1920x1080, with no luck.

I connected the VGA monitor to the HDMI output using the HDMI to VGA adaptor, and the TV to the DVI-D output, using a DVI-D to HDMI adaptor.  Both monitors run at the same time (three if you count the laptop), but still suffer from the same problems.
I tried a couple of other Live CD distros, and the only one that worked with the eGPU at all (Kubuntu) had the same problems.  I am running kernel version 4.20.6 (4.20.6-arch1-1-ARCH x86_64).

What might be causing these problems?  Is it the eGPU or the RX 550, or the desktop environment?  What else could I try to get around this?  Thanks in advance!

Offline

Board footer

Powered by FluxBB