Problems with Ubuntu Linux on notebooks with AMD Ryzen APUs

End of last year I have replaced my aging ASUS Zenbook UX32LN with a Ryzen-based UM431DA. After installing Ubuntu 20.04 focal with kernel 5.4 I have noticed four annoying problems:

  1. Initializing X.Org and getting to the login screen may not work
  2. Suspend does not work (system freezes)
  3. There is disturbing tearing when moving windows or playing movies
  4. Sound is very loud and volume control does not work properly

My notebook variant comes with a Ryzen 7 3700U CPU and 16GB RAM.

Buyers of specific Ryzen 5 2500U or Ryzen 7 3700U notebooks like the ASUS UM431DA should know that the amount of system RAM taken by the APU might not be adjustable on all models. On the UM431DA it is fixed to 2GB of system RAM. This means that a UM431DA notebook with advertised 8GB of RAM is going to have only 6GB of RAM available to the operating system.

Display initialisation and suspend bugs

The first problem comes with the following lines in the system console:

Failed to write reg 28b4 wait reg 28c6
Failed to write reg 1a6f4 wait reg 1a706

It is followed by unexpected behavior. X Windows may not get initialized or they do after a some time. This happens every time the screen is switched. This problem is related to the amdgpu kernel driver.

My solution to this and the suspend problem is moving to the newer 5.8 kernel that is provided by the linux-generic-hwe-20.04-edge or by using Ubuntu 20.10 (Groovy Gorilla) or later.

apt -y install linux-generic-hwe-20.04-edge

The changelogs are available under the link below:
http://changelogs.ubuntu.com/changelogs/pool/main/l/linux-hwe-5.8/

Tearing bug

The tearing problem that occurs on both internal display and HDMI outputs can be solved by adding Option "TearFree" "true" to the amdgpu driver configuration.

/usr/share/X11/xorg.conf.d/10-amdgpu.conf

Section "OutputClass"
         Identifier "AMDgpu"
         MatchDriver "amdgpu"
         Driver "amdgpu"
         Option "TearFree" "true"
EndSection

Volume control bug

The volume control problem can be solved by adding the section [Element Master] to analog-output.conf.common right before [Element PCM] of alsa-mixer.

/usr/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common

[Element Master]
switch = mute
volume = ignore

[Element PCM]
switch = mute
volume = merge
override-map.1 = all
override-map.2 = all-left,all-right

0 thoughts on “Problems with Ubuntu Linux on notebooks with AMD Ryzen APUs

  • Tearing bug

    Ahoj, díky za návod moc mi to pomohlo. Kupoval jsem dětem 2 stejné notebooky a chyba se projevila po prvním uspání zařízení. Jediné info zde od tebe.

  • Paulo André says:

    Thank you Martin Matuška.
    I have the same computer model running elementary os and that resolved some of the problems that i was experiencing, even without upgrading the kernel
    By the way in elementary os i had some login problems (it freezed without the possibility of using my credentials) that i resolved by adding iommu=off to grub file
    thanks again
    Paulo

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>