# AMD Radeon and no driver?

## The_Great_Sephiroth

Alright, I am confused as all hell as to how to make an AMD card work here. It is so damn simple with nVidia and Intel that maybe my skills are not up to snuff, but now I am lost in how to get full hardware acceleration for my video card. The card is an AMD Radeon HD 6520G. I just want this damn thing to work. I have seen "radeon", "amdgpu", "fglrx", and I believe one other. Then there's the official driver from AMD. AMD selects the 15.9 driver for my card, but it is stated to only work with distros like Ubuntu, Debian, and Redhat. The nVidia drivers actually build from source on your system, but I am not so sure about the AMD driver, so that may rule out an official driver. If I use the "radeon" driver I do not get 3D acceleration and fall back to mesa. I don't even know a thing about the "amdgpu" driver yet. So damn confusing!

So, can somebody explain how to get FULL 3D ACCELERATION AND HARDWARE SUPPORT on recent AMD video cards? The radeon driver works, but I cannot use it on games due to mesa being insanely slow. Is there a guide which details this obviously complex process? Bear in mind that the X server is now 1.18 and I do not believe fglrx will cooperate with it, adding to the frustration. This is why I buy nVidia! Still, it's a free laptop, but if this does not work soon it may become a free target to shoot at. Pop quiz! How many .50cal rounds will it take to FIX the piece of junk AMD card?

----------

## The_Great_Sephiroth

Is it possible to use the official driver from AMD on Gentoo and select it for OpenGL with eslect?

----------

## ct85711

The only proprietary driver that AMD maintains is amdgpu.  A while ago AMD decided to completely drop the fglrx on being developed all together and rewrite the entire driver package.  In the process of the rewrite, they dropped support for a lot of the older cards.  So if your card does not support amdgpu, you are effectively out of luck for an updated driver.

 *Arch wiki wrote:*   

> At the moment there is support for the Volcanic Islands, some cards of the Sea Islands family and the Southern Islands family (more experimental than Sea Islands and coming only in Linux 4.8 ). AMD has absolutely no plans for supporting the pre-GCN GPUs. 

 

https://wiki.archlinux.org/index.php/AMDGPU

From what I can tell, the 6520G is around the Northern Island set; so have fun!

----------

## Ant P.

 *The_Great_Sephiroth wrote:*   

> The radeon driver works, but I cannot use it on games due to mesa being insanely slow.

 

Define "insanely slow"? I get playable framerates on games with a HD6450.

----------

## cboldt

I'll admit ignorance of how the "X" drivers and kernel interact, but is the appropriate linux-firmware being loaded?

----------

## The_Great_Sephiroth

ct85711:

That is what is adding to the confusion. AMD keeps defining specific cards as old and there are many different unsupported cards around while nVidia cards that work go way back, making it easier on me. ATI did this mess a few years ago also, before AMD acquired them, making life in Linux with specific ATI cards hell. And yes, my card is Northern Islands and uses the SUMO stuff.

Ant P:

I have tried mesa many times in the past and it always sucked, which is why I used the official drivers for my nVidia systems, resulting in a HUGE improvement. I have also been told that mesa is software. I forget where I read that or who told me that. It was back in my Debian days. On other AMD/ATI systems I get an option to use fglrx or mesa, and fglrx always beats mesa. In my eyes, mesa is a fall-back.

cdboldt:

Yes, it is loading the SUMO firmware correctly.

Quick question. Since AMD wants me to use the Catalyst driver (can I use the official driver on Gentoo?) does that mean fglrx supports my card? I cannot find a supported card list for fglrx, making it impossible for me to know.

----------

## Hu

When you tried Mesa and saw poor performance, were you using an ATI card or an nVidia card?  Due to an ongoing lack of cooperation from nVidia, the open source drivers for their cards progress more slowly and generally work less well, although they are usable.  That lack of cooperation, in conjunction with their tendency to drop cards before the hardware dies, is why I warn people to stay away from nVidia.

Like Ant P., I use an ATI card with the open drivers.  I had no trouble getting it going and its performance is excellent.

----------

## The_Great_Sephiroth

Alright, I will try the radeon driver I built into my kernel along with mesa. Will mesa allow me to game though? That is my primary concern. Also, does anybody know if the official driver will work in Gentoo?

----------

## Hu

My user is in the video group.  I use stable amd64 X server, the open source driver for my card (which is now more than 5 years old).  I run various games, both Linux native and Wine-assisted.  The Wine games are newer and tend to be more demanding, but I have not observed any problems I believe to be related to the graphics driver.

----------

## ct85711

 *Quote:*   

> Also, does anybody know if the official driver will work in Gentoo?

 

To AMD/ATI, the only official driver for them is amdgpu, fglrx has been abandoned.  Does fglrx work?  It probably will, but keep in mind it's not going to be updated anymore.  Also keep in mind, it does NOT support xorg-server-1.18.  Just like a lot of closed-source software, once they drop something it no longer exists to their eyes.  The best you can hope for, is that some of the amdgpu work is also passed down to the radeon side too.

----------

## Zucca

Your GPU is older model, so install radeon driver (x11-drivers/xf86-video-ati, wiki). Then set proper VIDEO_CARDS to your /etc/portage/make.conf. Then run

```
emerge --ask --deep --newuse @world
```

I read from previous post that you have already included the firmware, so no kernel recompilation needed.

Using closed source drivers (fglrx) that is no longer supported by upstream (AMD) limits you by the fact that you must keep an older xorg-server (that's compatible with the obsolote drivers) version. That's why I highly recommend you to use open source drivers.

----------

## NeddySeagoon

The_Great_Sephiroth,

If you download the official driver from the AMD/ATI website and install that you get to keep all the pieces.

That's partially what the ebuild does.  It fetches the fglrx binary blob abandonware.

Use the ebuild if you want to do this and keep Xordg below 1.18

The nVidia driver does not compile on your system.  nVidia ship the same binary blob as they use on Windows. 

What compiles is the shim wrapper to make the blob talk to the kernel.

The open drivers are the way ahead for you.

----------

## plasmonics

I agree with Vulgar that amd cards are garbage.  I always use nvidia on my homebuilt desktop.  emerge nvidia-drivers works everytime.  My laptop came with amd.  AMD gpu is extemely difficult to set up now that amd no longer supports the catalyst driver.

After hours of googling, I manage to get it working.  You need to use the Gentoo wiki to find out the chipset and the corresponding driver for your card.  For instance, my card is HD7660G.  It is a radeon, not a amdgpu.  I found this out by trial and error.  Then in /etc/portage/make.conf, you set VIDEO_CARDS="radeon".  You also need to compile the kernel with extra firmware.  Enable DRM and choose either radeon or amd in kernel config and add the extra firmware and the path.  Mine are the four R600-*bin files.  Yours are probably the same.  There is no harm in compiling extra firmware if you are not sure.  After you boot into the new kernel, you need to do a deep recompile following the wiki.  The entire xorg system and Mesa have to be recompiled.

----------

## Zucca

 *plasmonics wrote:*   

> AMD gpu is extemely difficult to set up now that amd no longer supports the catalyst driver.

 *sigh*

 *Zucca wrote:*   

> Using closed source drivers (fglrx) that is no longer supported by upstream (AMD) limits you by the fact that you must keep an older xorg-server (that's compatible with the obsolote drivers) version. That's why I highly recommend you to use open source drivers.

 Open Source drivers work even on my HD 3000 series card and R9 Nano on the same machine with multiseat setup, meaning "at the same time".

Open Source drivers are about on par with the current closed source drivers. Current closed source drivers are named Crimson, NOT Catalyst. On Linux those Crimson drivers are commonly known as AMDGPU-PRO. And Catalyst drivers were outright horrible. I once tested them and went back to open source.

Anyway. I wouldn't use Crimson/amdgpu-pro drivers anyway since AMD offically only supports RedHat, Suse, Ubuntu and SteamOS.

And What comes to firmwares, I think you can configure kernel to load firmwares from a directory also, so you might not need to compile/insert them into kernel.

In summary: Use the open source drivers.

----------

## Ant P.

Okay, there seems to be a worrying amount of people who learned something from a blog ten years ago and either haven't bothered to update their mindset or went spreading this outdated info to others.

Here is how installing *any* modern GPU driver works:

```
echo "*/* openmax vaapi vdpau VIDEO_CARDS: radeon amdgpu modesetting" >> /etc/portage/package.use/gpu.conf

emerge -DN mesa xorg-drivers linux-firmware

cd /usr/src/linux

./scripts/config --enable DRM

./scripts/config --enable DRM_FBDEV_EMULATION

./scripts/config --module DRM_I915

./scripts/config --module DRM_RADEON

./scripts/config --module DRM_AMDGPU
```

If you want an early framebuffer to avoid mode switching delays, then go back and change the actually loaded kernel module (in lspci) to =y and firmware files (in dmesg) to built-in.

----------

## Zucca

 *Ant P. wrote:*   

> Here is how installing *any* modern GPU driver works:
> 
> ```
> echo "*/* openmax vaapi vdpau VIDEO_CARDS: radeon amdgpu modesetting" >> /etc/portage/package.use/gpu.conf
> 
> ...

 ... something along those lines is something wiki may need.

----------

## Budoka

 *Zucca wrote:*   

> Your GPU is older model, so install radeon driver (x11-drivers/xf86-video-ati, wiki). Then set proper VIDEO_CARDS to your /etc/portage/make.conf. Then run
> 
> ```
> emerge --ask --deep --newuse @world
> ```
> ...

 

What are the open source drivers called? I want to migrate to them but not sure what I am looking for. Thanks.

----------

## Zucca

 *Budoka wrote:*   

> What are the open source drivers called? I want to migrate to them but not sure what I am looking for. Thanks.

 Currently there are two open source drivers for AMD. You must choose one or the other based on your GPU model.

Please see these wiki pages:Radeon - driver in portage: x11-drivers/xf86-video-ati

Amdgpu - driver in portage: x11-drivers/xf86-video-amdgpu

When you're done, finally remove x11-drivers/ati-drivers if you have them installed.

I hope this helps.

----------

## Zucca

Oh. And the "black screen issue" some are having might be solved by: *Althorion wrote:*   

> But I have actually solved this issue (by asking on IRC):
> 
> You need to have CONFIG_DRM_FBDEV_EMULATION turned on, that Wiki doesn’t say anything about.

 

Come to think of it... I may create a wikiaccount for myself. And learn some wikisyntax.

----------

## The_Great_Sephiroth

Lots of replies while I was busy. I am using the radeon driver now. The system is built and appears to be fine. The radeon driver can NOT be built into the kernel for some reason. It must be built as a module. I already set both "VIDEO_CARDS" and "ALSA_CARDS" as I do on all Gentoo systems. I also set "INPUT_DEVICES" and some other stuff. My only remaining issue with this laptop is that randomly it boots and the keyboard/touchpad do not work. No rhyme or reason. It is detected according to dmesg, but it refuses to accept input from it. I have a thread open for that though.

Perhaps we should update the wiki page for AMD/ATI and give detailed directions for the open-source drivers along with a list that is easy to understand for those in the future who are also confused?

----------

## Zucca

 *The_Great_Sephiroth wrote:*   

> Perhaps we should update the wiki page for AMD/ATI and give detailed directions for the open-source drivers along with a list that is easy to understand for those in the future who are also confused?

 Yeah. It needs some polishing. Maybe a quick and dirty -howto section too.

----------

## NeddySeagoon

The_Great_Sephiroth,

Radeon can be built in.  Its that way on my media player.

However, the firmware must be built in too.

The boot sequence is the kernel loads, initialises the built in modules, which as part of their startup, load any required firmware.

Root is not yet mounted, so /lib/firmware cannot be read.

That's regardless of root being the real root or an initrd.

When Radeon is a module, its loaded from the root filesystem anyway, so /lib/firmware is present.

If you use Radeon as a module and its in your initrd,  /lib/firmware/... needs to be in the initrd too.

Some Radeon cards only need firmware for hadrware 3D acceleration.  You might not even notice it missing.

Others need the firmware for everything.   

There you go - eight permutations but only three work.

Its the same for all drivers that need firmware.  The firmware must be available when they initialise.

This is why is a very good thing to make these things work as loadable modules first. It saves kernel rebuilds and reboots.

----------

## The_Great_Sephiroth

Neddy, I tried using it with this model card as built-in and it would not work. I did build the correct firmware into the kernel, but it just would not work. Perhaps it is with this model card/configuration, and not all. Either way, as a module it works fine and I only have to build the AMD microcode updates into the kernel.

----------

## Budoka

 *Zucca wrote:*   

>  *Budoka wrote:*   What are the open source drivers called? I want to migrate to them but not sure what I am looking for. Thanks. Currently there are two open source drivers for AMD. You must choose one or the other based on your GPU model.
> 
> Please see these wiki pages:Radeon - driver in portage: x11-drivers/xf86-video-ati
> 
> Amdgpu - driver in portage: x11-drivers/xf86-video-amdgpu
> ...

 

That was helpful. Thanks!

I am curious how I can test/know that my system is using Radeon? I have a laptop with one of those hybrid cards:

```
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)

01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Seymour [Radeon HD 6400M/7400M Series]
```

I don't see either the radeon.conf or intel.conf in xorg.conf.d as both the Radeon and Intel wiki indicate should exist. I only have 20opengl with nothing in it.

eselect mesa is showing some radeon stuff and eselect opengl only has xorg.

----------

## NeddySeagoon

Budoka,

Look in /var/log/Xorg.0.log.

I've not had anything to do with AMD/Intel Hybrids.  However, early hardware really had two completely independent graphics systems with an electronic switch at the output, called a multiplexer.   The multiplexer cost money, took up both space and power and as it is in the video path, degraded the image.

The multiplexer needs the kernel module VGA Switcheroo to control it and it can only be switched when Xorg is not running.

Later systems, called muxless, do not have this multiplexer. Now, the more powerful graphics system is only half a graphics system. With the multiplexer gone, it has no connections to the display surface.

In low power/performance mode, the Intel graphics does everything.

In high power/performance mode.  The Intel graphics chip reads the pixel buffer to the display, so you still see the display and the AMD/nVidia chip renders the image into the shared pixel buffer..

With a muxless system, attempting to use the high performance GPU alone always results in a blank screen as it has no way to drive the display.

The two graphics systems must co-operate.

----------

## Budoka

 *NeddySeagoon wrote:*   

> Budoka,
> 
> Look in /var/log/Xorg.0.log.
> 
> I've not had anything to do with AMD/Intel Hybrids.  However, early hardware really had two completely independent graphics systems with an electronic switch at the output, called a multiplexer.   The multiplexer cost money, took up both space and power and as it is in the video path, degraded the image.
> ...

 

Thanks Neddy! It seems like it is working!

https://paste.pound-python.org/show/0sezYFlugwUDmAGfBJBJ/

https://paste.pound-python.org/show/Xe1rstlIF4CZ5hfBtPOo/

Also, thank you for the detailed explanation. I think that you may have done the same when I was initially setting up my system years ago but it was beyond my comprehension at that time...but now I "get it".

----------

## jserink

 *plasmonics wrote:*   

> I agree with Vulgar that amd cards are garbage.  I always use nvidia on my homebuilt desktop.  emerge nvidia-drivers works everytime.  My laptop came with amd.  AMD gpu is extemely difficult to set up now that amd no longer supports the catalyst driver.
> 
> 

 

This comments is nonsense and not very helpful.

Why not just be honest and state that you have not dedicated the time to get the opensource radeon driver working so you are unsure about AMD cards?

That is the truth, saying the AMD/ATI cards are garbage is pure hyperbole.

My ONLY criterion on purchasing a laptop for work or anything else is ATI display card because I ONLY use open source drivers, period. 

Your comment is ridiculous.

John

----------

## Zucca

First thing I add to AMD wikipages is that people should avoid using catalyst because it's obsoloted by manufacturer.

I just need to get into the mood to edit them. :P

 *jserink wrote:*   

> My ONLY criterion on purchasing a laptop for work or anything else is ATI display card because I ONLY use open source drivers, period.

 ... although older Nvidias work ok with Nouveau.

----------

## Zucca

Well. Feeling lazy still. But I managed, at least, to create a note at the start of the page about the deprecated Catalyst drivers: https://wiki.gentoo.org/wiki/Radeon.

----------

