Load amdgpu drivers


#1

Hi everybody

I’ve been playing on manjaro for a few days and I love it. Almost everything runs smoother and is easier to obtain than on any other distro I have worked before. Stuff like texlive or even scrcpy where almost point and click whereas on other distros they mean a pack of beer and a few hours sweating.

Anyway, I have everything I need setup and working great (except a Google printer I still need to configure) but there’s one thing that is bugging me:

My system has currently 3 x R9 390 cards I used to use for some mining on a Mint distro. Although right now, mining isn’t cost effective for me anymore, I feel like I want to prove myself I can make it work on my manjaro system.

By default, all 3 cards are using the default video-linux drivers which translates into Radeon on my system. I tried starting up xmr-stak but even with open CL amd package installed, it segmentfaults because DRM version is 2.5 while driver works on 3+.

I thought that maybe I could force the use of amdgpu drivers (they appear to be installed on my system) so I modified mkinitcpio.conf to first load amdgpu and then Radeon but it still defaulted to Radeon. Then my latest idea was to modify grub to include: radeon.cik_support = 0 radeon.si_support=0 amdgpu.cik_support =1 amdgpu.si_support =1

But unfortunately the system doesn’t even boot with those settings.

Should I just give up? I’ve read through the forums and learned quite a bit about the gpu scene but the truth is, I’m not a gamer nor am I really a miner so as long as I have a dual monitor output working fine, I can live with that. It’s just my curious nature that wants to make this work and feel that manjaro does everything as good or better than my previous distro.

Thx

Tony


AMD Radeon R9-360 installation issue
#2

The “decoder ring” page https://www.x.org/wiki/RadeonFeature/#index5h2 says your GPU is a Sea Islands chip.

Therefore, according to https://wiki.archlinux.org/index.php/AMDGPU#Enable_Southern_Islands_(SI)and_Sea_Islands(CIK)_support you need both

and

as the kernel parameters.


#3

We have a amdgpu-experimental that switches to amdgpu un experimental supported plattforms. Just undo ALL of your changes and install it + restart.

However we have some users with issues on 4.19 with amdgpu-experimental for the R9 290/390.

On top of that CL is not official supported on amdgpu right now. there is an aur package opencl-amd that loads the pro-opencl userspace driver to the open amdgpu and my test was luckily successfull on a R7 240, but experimental is just what it is after all.


#4

Thanks for your quick answer. What you suggest, is exactly what I did. As amdgpu (the open driver) was already present on my system from install, I thought I only needed to edit mkinitcpio, run mkinitcpio -P, modify the default Linux command line in /etc/default/grub and run update-grub

Didn’t work though. I’m attaching a pic to see the boot result.

On top of that, I realized I screwed up grub the day before with install-grub (forgetting I’m on uefi). I think I have it fixed now but those parameters still screw up my boot. Don’t know why.


#5

Hi. Thx for the input. My (stupid? Naive?) idea was to use the open driver amdgpu and the AUR package opencl-amd to make this work. I’m not sure this is even possible. I was trying to avoid using the experimental driver.


#6

there is only one amdgpu driver and the support for your card (GCN1.1) is experimental. Thats why it’s called amdgpu-experimental.


#7

Sorry for the late reply.

I tried the amdgpu-experimental package. The result was exactly the same as activating the

radeon.cik_support=0 amdgpu.cik_support=1

in kernel parameters.

Luckily I use TimeShift so it was a matter of booting through the liveCD, updating 370 packages, installing TimeShift and restoring a backup made 15 min earlier.

I think I’ll give up on this. It worked on Mint but I couldn’t update the kernel past 4.10 or it would break. Bye bye mining. I might remove the extra video cards from my system. There is really no use for them now.

Thank you for all the help and time you took to reply.

I still love Manjaro!

Cheers
Tony


#8

Hi again.

@Tids

I just can’t leave this alone. I guess it’s a personality trait. Good for my job. Not so good for personal stuff.

Anyway, I installed an older kernel (4.18.20-1), modified the grub.cfg file (I know it won’t survive the next ‘update-grub’ command) so that the 4-18 kernel will boot up with radeon.cik_support=0 amdgpu.cik_support=1 amdgpu.dc=0 and behold… it actually booted!

I did NOT install amdgpu experimental package nor amdgpu pro. I’m just using what was installed during initial setup (video-linux, amdgpu, etc).

My inxi -G output now reads:

[tchavei@fe-tchavei ~]$ inxi -G
Graphics:
  Device-1: AMD Hawaii PRO [Radeon R9 290/390] driver: amdgpu v: kernel 
  Device-2: AMD Hawaii PRO [Radeon R9 290/390] driver: amdgpu v: kernel 
  Device-3: AMD Hawaii PRO [Radeon R9 290/390] driver: amdgpu v: kernel 
  Display: x11 server: X.Org 1.20.3 driver: amdgpu,ati unloaded: modesetting 
  resolution: 1920x1080~60Hz, 1920x1080~60Hz 
  OpenGL: renderer: AMD Radeon R9 390 Series (HAWAII DRM 3.26.0 
  4.18.20-1-MANJARO LLVM 7.0.0) 
  v: 4.5 Mesa 18.2.6 
[tchavei@fe-tchavei ~]$ 

As you can see, amdgpu is now loaded and finally DRM is 3.26 instead of 2.50. Mining actually works now (although I got one invalid package per device… as I write this, success rate is around 84%). The only thing I did notice is that my dual screens flickered every 10-20 seconds during the first 5-10 minutes after boot. They aren’t flickering now.

I think this is a partial success. Now what bugs me is that I’m not using the latest kernel… should I just ignore this until 4.20 comes out or try again with 4.19? One thing I did different this time was adding the amdgpu.dc=0 parameter which I don’t think I did when I first tried to load amdgpu on 4.19. Could that be it? I don’t even know what that parameter is responsible for… direct code? What about amdpgu.dm ?

Thanks for all the help

EDIT1: I applied amdgpu.dc=0 to the 4.19 kernel bootcmd and it works! I’m happy

EDIT2: Fan control doesn’t seem to work in 4.19… I stopped mining when I realized all 3 GPUs were between 84C and 95C!.. Arg… Any idea on fixing this? Thx

Tony


#9

Better cooling?


#10

Lol… I’m sorry I wasn’t explicit:

Fan control doesn’t seem to work under 4.19 with amdgpu

Under 4.18, the fans spin up to 70-80% immediately after starting mining and adjust automatically speed to keep the cards at around 65C. With 4.19, nothing happens… the GPUs just start to overheat. When reaching 95C, suddenly some short fan bursts (< 1s) start to appear but they are obviously insufficient.

It’s one problem after another… cool :slight_smile:


#11

Hello. I have exactly the same problem on my video card. This problem is present in kernels 4.19.x and 4.20-rc. I have to use kernel 4.18.20. I was looking for a solution - I have not found it yet. Can someone know a solution?


#12

You mean no fan control? At least I’m not alone with this thing.

I always thought that fan control was dependant on the gpu bios but I guess I learned something new. Curiously, when I try pwmconfig, it immediately spins all my fans to 100% and only stops after a reboot. I checked out pwm1_enable it is set to “1” on all cards (manual mode?) but even changing it to “2” doesn’t produce any noticeable effect and after a reboot, the values are back at “1”.

I’m not even sure why I’m messing with pwmcontrol. Never had to do anything with 4.18.

Oh and when I do a tail -f on pwm1 the values swing between 86 and 127 (127 should be 50%, right?) but no audible/visual reaction on the fans can be seen. They happily spin at idle speed (whatever rpm that is… Slow).

Tony


#13

Yes. This is a problem with Radeon 290/390 graphics cards with kernel 4.19 or 4.20. This is not a Manjaro Linux problem. I checked on Rosa Linux, Arch Linux - the same problems. There is no adequate adjustment of the fan speed depending on the temperature. And I have not found a solution anywhere. Looks like I’ll have to wait for kernel 4.21 :frowning:


#14

Well right now a manual command something like

Set all fans to 75%
Mine 
Stop mine 
Set all fans to 10%

Would be enough to “patch” my issue till 4.21, 4.22 or whatever.

I know it’s possible because pwmconfig spins the fans up to 100%, just don’t know how to do it myself (to 75% that is).


#15

Please consider to report this behavior to the amdgpu people, so they know about it and maybe also fix it for future kernel versions.


#16

I would if I knew who they are… time to hit google I guess.

EDIT: I found the bug reported on bugzilla. Added comment. Not sure that is the right place.

Thx Tids.


#17

Try amdgpu-fancontrol?


#18

I think its on freedekstop DRI, DRM, AMDgpu

https://bugs.freedesktop.org/buglist.cgi?component=DRM%2FAMDgpu&product=DRI&resolution=---

Please mention that there are issues with DC. thats important, because there will be the point where DC is required to get a output on amdgpu.


#19

Thank you @cscs and @Tids
I will look into the script and also the buglist

Tony


#20

Hi, is there a “step by step how to” to switch between radeon to amdgpu? i have a hd 8240 and i know it works with amdgpu, but mhwd choose for me radeon module. thanks!