Project

General

Profile

Bug #2091

Regression: AMD Radeon R5 230 unsupported since kernel 4.14

Added by dllud 3 months ago. Updated about 1 month ago.

Status:
open
Priority:
bug
Assignee:
-
% Done:

0%


Description

The radeon driver on a machine with an AMD Radeon R5 230 graphics card (Caicos PRO, Radeon HD 7450) is not working properly with Parabola's Linux-libre since version 4.14.

When booting in UEFI mode the the boot process stalls at the framebuffer handout:

[drm] radeon kernel modesetting enabled
fb: switching to radeondrmfb from EFI VGA

Booting in BIOS mode works, but X Server fails on startx with a similar error:

(II) modesetting: Driver for Modesetting Kernel Drivers: kms
(II) [KMS] drm report modesetting isn't supported.
(EE) open /dev/dri/card0: No such file or directory
(WW) Falling back to old probe method for modesetting
(EE) open /dev/dri/card0: No such file or directory
(EE) Screen 0 deleted because of no matching config section.
(II) UnloadModule: "radeon"
(EE) Screen 0 deleted because of no matching config section.
(II) UnloadModule: "modesetting

Up to kernel 4.13 it all worked good when booting in BIOS mode (UEFI mode never worked for me). I can get into LXDE if I boot your old parabola-systemd-lxde-x86_64-netinstall-2017.11.01-07.01-alpha.iso image in BIOS mode, which includes kernel 4.13.10-gnu-1.

I was able to pinpoint this issue as coming from the particular build configuration of Parabola's Linux-libre because:
1. Everything works fine if I replace linux-libre and linux-libre-firmware for Arch's blobbed linux and linux-firmware. Meaning, no other software is to blame apart from the kernel.
2. I am able to run X on Debian with both 4.18 and 4.14 kernels from Jason Self's APT Repository for Linux-libre https://jxself.org/linux-libre/ (only BIOS mode works, as before with Parabola).

I tried to compare Jason's kernel config ( https://jxself.org/git/?p=kernel-configs.git;a=blob;f=4.18/x86-64;h=7298c9a07ec83f81747f200a27d42f36f8edb25d;hb=HEAD ) to Parabola's config ( https://git.parabola.nu/abslibre.git/tree/libre/linux-libre/config.x86_64 ), however I am kinda hopeless amidst so many variables.

The critical point in time was the transition from kernel 4.13 to 4.14, when linux-firmware was put into a separate repo.

History

#1 Updated by GNUtoo about 1 month ago

Some questions:
- Can you make sure that it worked before without the firmware?
- What worked before? Did 3D acceleration work, or only 2D? Were the Radeon kernel and Xorg drivers loaded?

Some background information:
- Upstream Linux made sure that the Radeon driver would not load if you don't load the fimrwares. Because of that, linux-libre has to patch the Radeon driver to make sure that it loads without the nonfree firwmares. The patches are GPU specific, and so it's possible that linux-libre needs to add a patch for your GPU. It's trivial to do but last time I worked on that they required me to test it for the GPUs it would be enabled for, and I didn't have all the ATI/AMD GPUs.

#2 Updated by dllud about 1 month ago

Thanks a lot for looking into this!

- Can you make sure that it worked before without the firmware?

Linux-libre 4.13 does not have a separate firmware package. How should I test that?

- What worked before?

Pretty much everything: 2D and 3D. Both Radeon kernel and Xorg drivers get loaded.
I have just tested it now with parabola-openrc-lxde-dual-netinstall-2017.11.05.iso (kernel 4.13.11-gnu-1): I can get into LXDE and run glxgears smoothly.

it's possible that linux-libre needs to add a patch for your GPU

Umm... that does not seem to be the case. As I detailed above, I am able to run X (and glxgears) on Debian with the 4.18 kernel from Jason Self's APT Repository for Linux-libre. I purged the Debian base kernel to make sure there were no firmwares in the system.

Also available in: Atom PDF