Enable amdgpu for pre-polaris cards by default instead of radeon

I recently took a look at Nobara Project and saw that they patched the kernel to enable amdgpu for pre-polaris cards by default instead of radeon. I know that EndeavourOS doesn’t ship custom kernel, so is it possible to detect this and add it as a kernel parameter.

My GPU is AMD R9 280X and with the radeon drivers I get no Vulkan support (actually this recently changed and I have vulkan support with radeon drivers, but it’s very limited and slow). Every time I install almost any distribution I have to add radeon.cik_support=0 radeon.si_support=0 amdgpu.cik_support=1 amdgpu.si_support=1 to GRUB_CMDLINE_LINUX_DEFAULT in /etc/default/grub.

I know it’s not that big of a deal, but it would have saved me so much time when I started using Linux.

There’s normally a reason for something if it’s not already a default - is there any possibility or any situation where this would have a negative effect?

Not really sure, as I have access only to my hardware.

One solution would be to show it as an option in the driver menu app.

The reason why AMD did not enable amdgpu for pre-polaris cards is that there may be issues. AMD decided that it would be better to keep it experimental and usually they have good reasons to do so.
The Arch Wiki has a section on how to enable the driver for experimental cards.

what is that “driver menu app”?

2 Likes

Oh, my mistake. I got confused with the new Nvidia-inst app from the new release.

Maybe I should make an app for that?

there are some issues with certian display output configurations for early GCN models thats the current show stop for amdgpu being default. I think Redhat has put some work in for fixing that but early GCN being so old now its not a huge priority. You can do it manually mostly fine but there are many games that will have problems on anything older than Bonaire/Hawaii.

Radeon 300 and older had a lot of mixed GCN generations and cards dont always ID themselves properly so its much easier to just go the safe route and leave it experimental on everything pre Polaris.

2 Likes

I thought I remembered something different from back in the days, when I had a Fury X, and actually, amdgpu IS enabled for cards earlier then Polaris by default (for GCN3.x and later):
https://wiki.gentoo.org/wiki/AMDGPU#Feature_support

Those are the earliest cards that have amdgpu enabled per default:
Volcanic Islands CARRIZO, FIJI, STONEY, TONGA, TOPAZ, WANI GCN3.x DCE 10/11.x R9 285, R9 380, R9 380X, R9 Fury, R9 Nano, R9 Fury X, Pro Duo

well, that’s why hardware is always identified on Hardware ID level, not on name level :wink:

They dont always I’d themselves properly. Some manufacturers have the same ID for a number of products.

Even today for example my 5700xt shares ID with 5600xt/5600/5700. You dont know for sure which it is unless you own it and luckily they’re all the same Arc but that’s not always the case. This happens with USB devices too where manufacturers just use a generic blanket ID for a number of products

For USB devices in example Huion has a number of pen tablets with completely different features with the same ID. My tablet for instance doesn’t even use the same ID as others from the same model and has a completely different one related to a group of tablet models with entirely different buttons and pen types. Its bad to assume the manufacturers will have the device ID itself properly in any way.