I built a new computer and am now getting weird graphics glitches when browsing the web or streaming video in a browser.
https://i.imgur.com/hJJm5aY.png
https://i.imgur.com/X74isqn.png
https://i.imgur.com/2ka12zm.mp4 (this one isn't mine, but similar to what is happening to me)
My setup:
Ryzen 5 3400G processor with integrated graphics
Gigabyte B450M DS3H motherboard (BIOS is updated with latest firmware), 16GB (2x8GB) DDR4 3200
Connected to Samsung Q70R QLED Smart 4K TV (old computer and HDMI cable worked fine with this TV)
I have tried many of the fixes that I found searching online, but none of them seem to completely fix the problem. I have tried fresh installs of the latest Ubuntu 18.04 and 20.04 versions. I have tried a couple methods of updating or changing the kernel versions. Changing resolutions, refresh rates, or scaling does not fix the issue.
Current configuration after fresh 20.04 install:
lsb_release -a
Distributor ID: Ubuntu
Description: Ubuntu 20.04 LTS
Release: 20.04
Codename: focal
uname -a
Linux media-server 5.4.0-29-generic #33-Ubuntu SMP Wed Apr 29 14:32:27 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
lspci | grep VGA
07:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Picasso (rev c8)
sudo lshw -c video
*-display
description: VGA compatible controller
product: Picasso
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
physical id: 0
bus info: pci@0000:07:00.0
version: c8
width: 64 bits
clock: 33MHz
capabilities: pm pciexpress msi msix vga_controller bus_master cap_list rom
configuration: driver=amdgpu latency=0
resources: irq:101 memory:e0000000-efffffff memory:f0000000-f01fffff ioport:e000(size=256) memory:fcb00000-fcb7ffff memory:c0000-dffff
Same problems can be observed with Ubuntu 20.04 LTS / Ryzen 3 3200G / Gigabyte B450M S2H / 16GB (2x8GB) DDR4 3200.
Workaround 1:
Disable IOMMU in BIOS.
Workaround 2:
Add
iommu=pt
to command line in/etc/default/grub
following the steps below.Run
Make the
GRUB_CMDLINE_LINUX_DEFAULT
line look like thisUpdate grub by
Reboot with
Is there a third workaround ?
The prompt is displayed ok (same picture on both screen) Then my display is sliced horizontally Each slice is shifted
I disabled IOMMU in the bios, changed the grub conf Activated dual screen in bios too.
HDMI monitor on HDMI (full hd) VGA monitor on HDMI>VGA on a DP>HDMI passive adapter (1650x ???) This is not a hardware issue or bios setting issue as I have dual screen working
Fresh ubuntu 20.04 install with kernel 5.4
Found a 3rd workaround with this video https://www.youtube.com/watch?v=WWg8q_f7nI4
I'm currently using Ubuntu 20.10
While support for these devices has been in the kernel for a while, I've found I've had missing firmware when I see an update-initramfs. I also saw some AMDGPU-specific commits to upstream linux-firmware a little while ago, and tried the latest available deb package for Hirsute - it fixed all of my weird issues with the system, including requiring software IOMMU
YMMV, but try the 1.191 deb package under https://launchpad.net/ubuntu/+source/linux-firmware
Edit: step by step instructions as requested!
sudo apt install /path/to/linux-firmware_1.191_all.deb
Edit2: For reference, I have two AMD systems this really helped with. One is a Dell Inspiron 5585 w/ AMD Ryzen 3500U, the other is one I built with an AMD Ryzen 3400G.