The AMDGPU Info/News Thread

not yet, gotta try now

Can't you patch in the DAL/Freesync stuff ?

Probably, it is kinda shaping up. DAL is called DC now and have been cleaned up considerably. Reading the drm-devel list over at freedesktop.org can be interesting. Seems like the maintainer over at AMD gets impossible orders from his bosses, so when he submits code to be mainlined the maintainer on the linux side has no choice but to reject it. Linux people don't want any HAL in their code, but the bosses over at AMD seems to think it is crucial. Poor Alex Deucher, stuck between a rock and a hard place. How frustrating it must be submitting code that you know is going to be rejected thanks to your bosses not listening to you.

The problem is as far as I understand this means propriatory layers of AMD code in the Kernals that could in theory break the desktop on Linux if a critical Windows AMD update takes place ( because the idea is cross platform OS code and it is all linked ) which sounds insane ( correct me if im wrong ) or that they would need to stall versions or add unnecessary hooks and fixes VS doing it right but slower and properly removing the HAL abstraction layer.

Some gamers are stomping their feet because they want it all now even though it goes against FOSS principles , but then others think it's okay but stuff gets done and just works.

So where are we drivers wise? AMDGPU has global support now, sorta, but what about ati and radeonsl? I'm trying to get my laptop set up the best I can but theres been issues that I can't wrap my head around....

Well its open source why don't we fix it ourselves and fork it.

I guess once AMDGPU is mature enough, radeon (ati) will be almost like a legacy driver for pre-gcn cards. Still don't get what radeonsi is all about though. But apperently I need it as a use flag in gentoo anyway. Also, may I ask what your issues with the laptop are?

For the most part its that I really just don't understand the technology. This is both my first UEFI machine (macs are easier than this thing I can just hack a mac) and this is my first machine with switchable graphics. I don't understand what drivers do what.

For example in Manjaro on this laptop it says its using Bumblebee for GPU switching between the M275X and the intel HD4400. But bumblebee is for optimus isn't it?

Past that the system, no matter what system OR if I install AMDGPU access by hand, ALWAYS reverts to the ATi line of drivers. I don't know if ATi is still the random out of nowhere open source driver I knew it was or if that was taken out and FGLRX was put in that slot instead.

As for basic OS I'm not really sure if its using the SSHD as it should. Boot time is par to none of my other laptops, 5 seconds, but thats the only snappy thing about the whole thing. I thought an app on wakeup, especially on XFS, would be right back up almost instantly. Steam and Firefox take 30 seconds or more on wakeup.

Then my last issue is purely with the mousepad. Ubuntu can use it just fine but manjaro seems to bounce between macbook mousepad drivers and synaptic drivers each millisecond (in manjaro). I can't click something once because it is constantly loading both drivers it seems so the click gets reset constantly. I open 18 tabs or 3 instances of steam. Its random if it even works or not.

Yes UEFI is a fucking pain. I feel you man. As for the bumblebee thing, yes that should only be for nvidia.
Also have you tried blacklisting the ati driver? Not exactly sure about the SSHD.
Have you tried uninstalling one of the mouse pad drivers?
Sorry if that doesn't seem helpful

1 Like

Possible, but not really realistic. The driver team over at Radeon Technologies are the ones that know how the hardware work in detail, we kinda don't. Not to mention the skill and amount of work involved. If we want the driver to be mainlined, we need to maintain it in some fashion too. I really hope the engineers working on the driver can get a little slack from the company lawyers. Sadly it seems to be that kind of problem. Must keep things seeekreeet.

Well after a long way of getting smashed by stupid amdgpupro drivers which work only in ubuntu 16.04lts, I've switched to archlinux and got gallium 0.4 working fully with mesa cough >req. a lot of tinkering< then even vulkan is actually supported directly from AUR, next step was to get wine-gallium-nine to work >link here> wine-gallium-nine and now (since am playing world of warcraft for last 9years, same patch tho 3.3.5a am getting ~95% of pure gpu performance in wine dx9) also dota2 works fine in opengl/vulkan getting ~same performance if not better than windows. here is screenfetch


(am using AMD RX460)

as compared to "standard" wine in ubuntu with amdgpupro drivers, i had 20-30fps max in 720p low settings, and here i have 75fps 1080p ultra + there is no issues with hardware cursor flickering/slowmotion<

2 Likes

Please create a detailed post about this as I have been looking for information on amdgpu with wine and report what you did in what order, desired accomplishments, and overall results. Thank you.

Excuse me, since I've always sucked at writing stuff, here is kind of "garbage guide" still needs a lot of details but mostly if someone is willing to make a new thread and make it less ugly here is info:
-yaourt (it's package manager to access aur repos where you can find almost anything)

refer to "https://forum.level1techs.com/t/full-arch-linux-install-guide-arch-101/83357" for installation instructions or "https://archlinux.fr/yaourt-en"

refer "https://www.x.org/wiki/RadeonFeature/" for more instructions<
refer to "https://dri.freedesktop.org/wiki/GalliumCompute/#index3h3" for more help
-get mesa from (git clone git://anongit.freedesktop.org/mesa/mesa) build+install => all instructions in page above with req. tools and compilers+dependencies
/// you will probably get into problems with pytho_mako module, google about it+go to official page dload+build+install, it will take some time unless it got fixed in arch already

for any other question or help needed you can always visit "https://dri.freedesktop.org/wiki/Documentation/"

refer "https://www.x.org/wiki/RadeonFeature/" for more instructions<

-get xf86-video-amdgpu from ( https://cgit.freedesktop.org/xorg/driver/xf86-video-amdgpu/ ) and build it+install with included script (./autogen.sh --with-dri-drivers="" --with-gallium-drivers=amdgpu,radeonsi --enable-opencl)

-wine-gaming-nine (https://aur.archlinux.org/packages/wine-gaming-nine/)
-vulkan/opencl is easy since it's in aur already

hey there! since i have some problems with getting the amdgpu-pro driver running i started a thread but it seems that here is the action. prepare for a huge dump:

booker@VilleGrove:~$ sudo lshw -c video

*-display
description: VGA compatible controller
product: Advanced Micro Devices, Inc. [AMD/ATI]
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
physical id: 0
bus info: pci@0000:01:00.0
version: c7
width: 64 bits
clock: 33MHz
capabilities: pm pciexpress msi vga_controller bus_master cap_list rom
configuration: driver=amdgpu latency=0
resources: irq:316 memory:c0000000-cfffffff memory:d0000000-d01fffff ioport:e000(size=256) memory:dfe00000-dfe3ffff memory:c0000-dffff

booker@VilleGrove:~$ uname -r
4.8.0-040800-generic

booker@VilleGrove:~$ dmesg | grep -i amdgpu
[ 1.182425] [drm] amdgpu kernel modesetting enabled.
[ 1.185688] fb: switching to amdgpudrmfb from simple
[ 1.186070] amdgpu 0000:01:00.0: Invalid PCI ROM header signature: expecting 0xaa55, got 0xffff
[ 1.186264] amdgpu 0000:01:00.0: VRAM: 8192M 0x0000000000000000 - 0x00000001FFFFFFFF (8192M used)
[ 1.186265] amdgpu 0000:01:00.0: GTT: 8192M 0x0000000200000000 - 0x00000003FFFFFFFF
[ 1.186369] [drm] amdgpu: 8192M of VRAM memory ready
[ 1.186369] [drm] amdgpu: 8192M of GTT memory ready.
[ 1.187688] amdgpu 0000:01:00.0: amdgpu: using MSI.
[ 1.187883] [drm] amdgpu: irq initialized.
[ 1.188006] amdgpu: powerplay initialized
[ 1.188327] [drm] AMDGPU Display Connectors
[ 1.188555] amdgpu 0000:01:00.0: fence driver on ring 0 use gpu addr 0x0000000200000008, cpu addr 0xffff9805940dc008
[ 1.188625] amdgpu 0000:01:00.0: fence driver on ring 1 use gpu addr 0x0000000200000018, cpu addr 0xffff9805940dc018
[ 1.188704] amdgpu 0000:01:00.0: fence driver on ring 2 use gpu addr 0x0000000200000028, cpu addr 0xffff9805940dc028
[ 1.188767] amdgpu 0000:01:00.0: fence driver on ring 3 use gpu addr 0x0000000200000038, cpu addr 0xffff9805940dc038
[ 1.188825] amdgpu 0000:01:00.0: fence driver on ring 4 use gpu addr 0x0000000200000048, cpu addr 0xffff9805940dc048
[ 1.188855] amdgpu 0000:01:00.0: fence driver on ring 5 use gpu addr 0x0000000200000058, cpu addr 0xffff9805940dc058
[ 1.189645] amdgpu 0000:01:00.0: fence driver on ring 6 use gpu addr 0x0000000200000068, cpu addr 0xffff9805940dc068
[ 1.189728] amdgpu 0000:01:00.0: fence driver on ring 7 use gpu addr 0x0000000200000078, cpu addr 0xffff9805940dc078
[ 1.189802] amdgpu 0000:01:00.0: fence driver on ring 8 use gpu addr 0x0000000200000088, cpu addr 0xffff9805940dc088
[ 1.189908] amdgpu 0000:01:00.0: fence driver on ring 9 use gpu addr 0x0000000200000098, cpu addr 0xffff9805940dc098
[ 1.189995] amdgpu 0000:01:00.0: fence driver on ring 10 use gpu addr 0x00000002000000a8, cpu addr 0xffff9805940dc0a8
[ 1.190282] amdgpu 0000:01:00.0: fence driver on ring 11 use gpu addr 0x000000000109c420, cpu addr 0xffffb0290225a420
[ 1.190418] amdgpu 0000:01:00.0: fence driver on ring 12 use gpu addr 0x00000002000000c8, cpu addr 0xffff9805940dc0c8
[ 1.190501] amdgpu 0000:01:00.0: fence driver on ring 13 use gpu addr 0x00000002000000d8, cpu addr 0xffff9805940dc0d8
[ 1.802189] fbcon: amdgpudrmfb (fb0) is primary device
[ 2.631932] amdgpu 0000:01:00.0: fb0: amdgpudrmfb frame buffer device
[ 2.654870] [drm] Initialized amdgpu 3.3.0 20150101 for 0000:01:00.0 on minor 0

booker@VilleGrove:~$ dpkg -l amdgpu-pro
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==================-==============-==============-=========================================
ii amdgpu-pro 16.50-362463 amd64 Meta package to install amdgpu Pro compon

booker@VilleGrove:~$ uname -r
4.4.0-57-generic
booker@VilleGrove:~$ configuration: driver=amdgpu latency=0
configuration:: command not found

booker@VilleGrove:~$ glxinfo | grep OpenGL
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: AMD Radeon (TM) RX 480 Graphics
OpenGL core profile version string: 4.5.13462 Core Profile Context
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.5.13462 Compatibility Profile Context
OpenGL shading language version string: 4.50
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL extensions:
OpenGL ES profile version string: 4.5.13462 Compatibility Profile Context
OpenGL ES profile shading language version string: 4.50
OpenGL ES profile extensions:

booker@VilleGrove:~$ configuration: driver=amdgpu latency=0
configuration:: command not found

seems that im stuck there. i installed the 16.50 driver, kernel is 4.8.0 no idea how to fix that.

heppy christmas folks

The PRO is not officially supported for kernels over 4.4. So the most safe option is to go back to 4.4.

But if you want to install it on 4.8 you can try this:

At your own risk of course. Most people i know that did this had no issues but you never know...

it's no prob if something goes south. I got everything backed up.

I loaded up kernel 4.4 but fps were lower than a boot up in kernel 4.8 so something in the 4.8 kernel does work better.

I read the Guide but I'm kinda confused at this point.

I have Ubuntu 16.04 I have Kernels 4.4 & 4.8 AMDGPU-Pro installed is 16.50 altough

lshw -c video
stuff
configuration: driver=amdgpu latency=0

shouldn't it be

configuration: driver=amdgpu-pro latency=0 ?

in the guide it says kernel 4.6.7 is the good stuff. but for driver 16.40?

Nah it is still amdgpu. The pro driver is just an extension to the default open one, it is not a different driver. So the lshw shows the same name.

Do this

dpkg -l amdgpu-pro

from there you can see which stack of the driver is installed if any.

Which guide are you referring to? If you mean the AMD guide from the link i posted it is an older one since the post is before the 16.50. To get the most recent AMD guide and driver go from the AMD website.

If you boot up with the open driver yeah. 4.4 to 4.8 the open driver is miles better.

here are some outputs that seem to say: amdgpu-pro driver is installed but not quite working

booker@VilleGrove:~$ dpkg -l amdgpu-pro
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-======================================-========================-========================-==================================================================================
ii amdgpu-pro 16.50-362463 amd64 Meta package to install amdgpu Pro components.

booker@VilleGrove:~$ sudo dpkg-reconfigure amdgpu-pro-dkms


Deleting module version: 16.50-362463
completely from the DKMS tree.


Done.
Loading new amdgpu-pro-16.50-362463 DKMS files...
First Installation: checking all kernels...
Building only for 4.8.0-040800-generic
Building for architecture x86_64
Building initial module for 4.8.0-040800-generic
ERROR (dkms apport): kernel package linux-headers-4.8.0-040800-generic is not supported
Error! Bad return status for module build on kernel: 4.8.0-040800-generic (x86_64)
Consult /var/lib/dkms/amdgpu-pro/16.50-362463/build/make.log for more information.

This looks quite promising, like there is something wrong, but how to fix!? different kernel version?

ERROR (dkms apport): kernel package linux-headers-4.8.0-040800-generic is not supported
Error! Bad return status for module build on kernel: 4.8.0-040800-generic (x86_64)

this is all on kernel 4.8 im now reporting same inouts with kernel 4.7

booker@VilleGrove:~$ dpkg -l amdgpu-pro
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-================================-=====================-=====================-=====================================================================
ii amdgpu-pro 16.50-362463 amd64 Meta package to install amdgpu Pro components.

booker@VilleGrove:~$ sudo dpkg-reconfigure amdgpu-pro-dkms
[sudo] password for booker:


Deleting module version: 16.50-362463
completely from the DKMS tree.


Done.
Loading new amdgpu-pro-16.50-362463 DKMS files...
First Installation: checking all kernels...
Building for 4.7.0-040700-generic and 4.8.0-040800-generic
Building for architecture x86_64
Building initial module for 4.7.0-040700-generic
ERROR (dkms apport): kernel package linux-headers-4.7.0-040700-generic is not supported
Error! Bad return status for module build on kernel: 4.7.0-040700-generic (x86_64)
Consult /var/lib/dkms/amdgpu-pro/16.50-362463/build/make.log for more information.

so same error. strange.

this says the make.log file in the consulting log file

DKMS make.log for amdgpu-pro-16.50-362463 for kernel 4.7.0-040700-generic (x86_64)
Mi 28. Dez 11:17:54 CET 2016
make: Entering directory '/usr/src/linux-headers-4.7.0-040700-generic'
  LD      /var/lib/dkms/amdgpu-pro/16.50-362463/build/built-in.o
  LD      /var/lib/dkms/amdgpu-pro/16.50-362463/build/amd/amdgpu/built-in.o
  CC [M]  /var/lib/dkms/amdgpu-pro/16.50-362463/build/amd/amdgpu/amdgpu_drv.o
In file included from /var/lib/dkms/amdgpu-pro/16.50-362463/build/amd/amdgpu/../backport/backport.h:5:0,
                 from <command-line>:0:
/var/lib/dkms/amdgpu-pro/16.50-362463/build/amd/amdgpu/../backport/include/kcl/kcl_ttm.h: In function ā€˜kcl_ttm_bo_reserveā€™:
/var/lib/dkms/amdgpu-pro/16.50-362463/build/amd/amdgpu/../backport/include/kcl/kcl_ttm.h:116:9: error: too many arguments to function ā€˜ttm_bo_reserveā€™
  return ttm_bo_reserve(bo, interruptible, no_wait, false, ticket);
         ^
In file included from /var/lib/dkms/amdgpu-pro/16.50-362463/build/amd/amdgpu/../backport/include/kcl/kcl_ttm.h:6:0,
                 from /var/lib/dkms/amdgpu-pro/16.50-362463/build/amd/amdgpu/../backport/backport.h:5,
                 from <command-line>:0:
include/drm/ttm/ttm_bo_driver.h:858:19: note: declared here
 static inline int ttm_bo_reserve(struct ttm_buffer_object *bo,
                   ^
scripts/Makefile.build:289: recipe for target '/var/lib/dkms/amdgpu-pro/16.50-362463/build/amd/amdgpu/amdgpu_drv.o' failed
make[2]: *** [/var/lib/dkms/amdgpu-pro/16.50-362463/build/amd/amdgpu/amdgpu_drv.o] Error 1
scripts/Makefile.build:440: recipe for target '/var/lib/dkms/amdgpu-pro/16.50-362463/build/amd/amdgpu' failed
make[1]: *** [/var/lib/dkms/amdgpu-pro/16.50-362463/build/amd/amdgpu] Error 2
Makefile:1463: recipe for target '_module_/var/lib/dkms/amdgpu-pro/16.50-362463/build' failed
make: *** [_module_/var/lib/dkms/amdgpu-pro/16.50-362463/build] Error 2
make: Leaving directory '/usr/src/linux-headers-4.7.0-040700-generic

there are a lot of errors but i have no idea of how to fix that. any ideas?

Uninstall it and try to reinstall it with 4.8 loaded with the fix from the post. If that does not work either then there is not choice. You have to stay with the 4.4 and wait for AMD to make a 4.8 compatible package.

1 Like

Amdgpu-pro dkms only supports kernel 4.7 or lower I think. I dont know how to fix this though... Sorry if thats not very helpful