# [solved] firmware for amd rx580 does not like kernel 4.19

## Elleni

Doublechecked that firmware builds with gentoo-sources-4.18.16. As soon as I switch to 4.19.0 I can emerge linux-firmware, but when building kernel, I get: 

```
make -j13 && make modules_install && make install && grub-mkconfig -o /boot/grub/grub.cfg

scripts/kconfig/conf  --syncconfig Kconfig

  DESCEND  objtool

  CALL    scripts/checksyscalls.sh

  CHK     include/generated/compile.h

  AS      firmware/amdgpu/polaris10_ce.bin.gen.o

  AS      firmware/amdgpu/polaris10_k_smc.bin.gen.o

  AS      firmware/amdgpu/polaris10_mc.bin.gen.o

  AS      firmware/amdgpu/polaris10_me.bin.gen.o

  AS      firmware/amdgpu/polaris10_mec2.bin.gen.o

  AS      firmware/amdgpu/polaris10_mec.bin.gen.o

  AS      firmware/amdgpu/polaris10_pfp.bin.gen.o

  AS      firmware/amdgpu/polaris10_rlc.bin.gen.o

  AS      firmware/amdgpu/polaris10_sdma1.bin.gen.o

  AS      firmware/amdgpu/polaris10_sdma.bin.gen.o

  AS      firmware/amdgpu/polaris10_smc.bin.gen.o

  AS      firmware/amdgpu/polaris10_smc_sk.bin.gen.o

  AS      firmware/amdgpu/polaris10_uvd.bin.gen.o

  AS      firmware/amdgpu/polaris10_vce.bin.gen.o

  AS      firmware/amd-ucode/microcode_amd_fam17h.bin.gen.o

  AR      firmware/built-in.a

  GZIP    kernel/config_data.gz

  LD [M]  drivers/gpu/drm/amd/amdgpu/amdgpu.o

drivers/gpu/drm/amd/amdgpu/amdgpu_drv.o: file not recognized: File format not recognized

make[4]: *** [scripts/Makefile.build:518: drivers/gpu/drm/amd/amdgpu/amdgpu.o] Fehler 1

make[3]: *** [scripts/Makefile.build:546: drivers/gpu/drm/amd/amdgpu] Fehler 2

make[2]: *** [scripts/Makefile.build:546: drivers/gpu/drm] Fehler 2

make[1]: *** [scripts/Makefile.build:546: drivers/gpu] Fehler 2

make: *** [Makefile:1052: drivers] Fehler 2
```

Last edited by Elleni on Wed Oct 31, 2018 8:31 am; edited 2 times in total

----------

## ali3nx

Have a system build running gentoo-sources-4.19 with 3x RX 480 and 1 x 580 successfully.

```
$ zcat /proc/config.gz |grep CONFIG_EXTRA_FIRMWARE

CONFIG_EXTRA_FIRMWARE="i915/kbl_dmc_ver1_04.bin amdgpu/polaris10_ce.bin amdgpu/polaris10_ce_2.bin amdgpu/polaris10_k_smc.bin amdgpu/polaris10_mc.bin amdgpu/polaris10_me.bin amdgpu/polaris10_me_2.bin amdgpu/polaris10_mec.bin amdgpu/polaris10_mec2.bin amdgpu/polaris10_mec2_2.bin amdgpu/polaris10_mec_2.bin amdgpu/polaris10_pfp.bin amdgpu/polaris10_pfp_2.bin amdgpu/polaris10_rlc.bin amdgpu/polaris10_sdma.bin amdgpu/polaris10_sdma1.bin amdgpu/polaris10_smc.bin amdgpu/polaris10_smc_sk.bin amdgpu/polaris10_uvd.bin amdgpu/polaris10_vce.bin intel-ucode/06-9e-09 intel-ucode/06-9e-0a intel-ucode/06-9e-0b intel-ucode/06-9e-0c"

CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware"

$ uname -a

Linux vargur 4.19.0-gentoo #3 SMP Wed Oct 24 11:15:06 CDT 2018 x86_64 Intel(R) Pentium(R) CPU G4560 @ 3.50GHz GenuineIntel GNU/Linux

$ eix linux-firmware

[I] sys-kernel/linux-firmware

     Available versions:  20180825^bs 20181001^bs **99999999^bs {savedconfig}

     Installed versions:  20181001^bs(12:15:15 10/12/18)(-savedconfig)

     Homepage:            https://git.kernel.org/?p=linux/kernel/git/firmware/linux-firmware.git

     Description:         Linux firmware files

$ ./ethminer -G --list-devices

Listing OpenCL devices.

FORMAT: [platformID] [deviceID] deviceName

[0] [0] Ellesmere

        CL_DEVICE_TYPE: GPU

        CL_DEVICE_GLOBAL_MEM_SIZE: 1835835392

        CL_DEVICE_MAX_MEM_ALLOC_SIZE: 1835835392

        CL_DEVICE_MAX_WORK_GROUP_SIZE: 256

[0] [1] Ellesmere

        CL_DEVICE_TYPE: GPU

        CL_DEVICE_GLOBAL_MEM_SIZE: 1835835392

        CL_DEVICE_MAX_MEM_ALLOC_SIZE: 1835835392

        CL_DEVICE_MAX_WORK_GROUP_SIZE: 256

[0] [2] Ellesmere

        CL_DEVICE_TYPE: GPU

        CL_DEVICE_GLOBAL_MEM_SIZE: 1835835392

        CL_DEVICE_MAX_MEM_ALLOC_SIZE: 1835835392

        CL_DEVICE_MAX_WORK_GROUP_SIZE: 256

[0] [3] Ellesmere

        CL_DEVICE_TYPE: GPU

        CL_DEVICE_GLOBAL_MEM_SIZE: 1835835392

        CL_DEVICE_MAX_MEM_ALLOC_SIZE: 1835835392

        CL_DEVICE_MAX_WORK_GROUP_SIZE: 256
```

----------

## Elleni

Thank you, for your comment. The thing is, that after having synced the system yesterday, I only have this version available: 

emerge --search linux-firmware

```
*  sys-kernel/linux-firmware

      Latest version available: 20181026

      Latest version installed: 20181026

      Size of files: 163'562 KiB

      Homepage:      https://git.kernel.org/?p=linux/kernel/git/firmware/linux-firmware.git

      Description:   Linux firmware files

      License:       linux-firmware ( BSD ISC MIT no-source-code ) GPL-2 GPL-2+ freedist
```

ls -l /usr/portage/sys-kernel/linux-firmware/

```

insgesamt 16

-rw-r--r-- 1 root root 3264 30. Okt 00:39 linux-firmware-20181026.ebuild

-rw-r--r-- 1 root root 3240  8. Aug 21:09 linux-firmware-99999999.ebuild

-rw-r--r-- 1 root root 1246 30. Okt 00:39 Manifest

-rw-r--r-- 1 root root  570  1. Okt 2016  metadata.xml
```

And this one only builds until kernel gentoo-sources-4.18.16 for me. 

zcat /proc/config.gz |grep CONFIG_EXTRA_FIRMWARE

```
CONFIG_EXTRA_FIRMWARE="amdgpu/polaris10_ce.bin amdgpu/polaris10_k_smc.bin amdgpu/polaris10_mc.bin amdgpu/polaris10_me.bin amdgpu/polaris10_mec2.bin amdgpu/polaris10_mec.bin amdgpu/polaris10_pfp.bin amdgpu/polaris10_rlc.bin amdgpu/polaris10_sdma1.bin amdgpu/polaris10_sdma.bin amdgpu/polaris10_smc.bin amdgpu/polaris10_smc_sk.bin amdgpu/polaris10_uvd.bin amdgpu/polaris10_vce.bin amd-ucode/microcode_amd_fam17h.bin"

CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware"
```

I was able to boot kernel-4.19.0 but then X did not find any display thus no gui and I discovered that sddm had crashed. But I was able to start gdm and login with gnome (wayland?) session but not with X session.

When I then tried to recompile kernel, I found out that with this firmware version it would not finish successfully, and that the only ebuild version I have is  20181026. So I reverted back to kernel-4.18.16 and with this one the gpu kernel modules are successfully built, so I thought, its maybe worth a post, perhaps even filing a bug?

el/linux-firmware

```
     Verfügbare Versionen:   20170314 (~)20171009 (~)20171123 (~)20171206 **99999999 {savedconfig}

     Installierte Versionen: 20181026^bs(00:19:51 31.10.2018)(-savedconfig)

     Startseite:             https://git.kernel.org/?p=linux/kernel/git/firmware/linux-firmware.git

     Beschreibung:           Linux firmware files
```

So it maybe only a problem with actual 20181026 version? Maybe I should search for ebuild file for older versions as I have. 

Right Now I come from uniistall kernel sources 4.19.0 and deleted /usr/src/linux-4.19.0 and I am trying again.Last edited by Elleni on Wed Oct 31, 2018 8:36 am; edited 1 time in total

----------

## Elleni

Edit to add, that after deletion of /usr/src/linux-4.19.0 and re-emerge of gentoo-sources-4.19.0 followed by emerge of linux-firmware, everything is ok again, and kernel could compile successfully.  I am not in front of the box and thus cannot test reboot immediately to check if X starts correctly. 

I am wondering, if I should delete this post, as it is certainly not of much value.   :Embarassed: 

I leave it to the moderator team to decide if its worth keeping it or if it should/can be deleted. In the meantime I put [solved] to its title

----------

## ali3nx

 *Elleni wrote:*   

> Edit to add, that after deletion of /usr/src/linux-4.19.0 and re-emerge of gentoo-sources-4.19.0 followed by emerge of linux-firmware, everything is ok again, and kernel could compile successfully.  I am not in front of the box and thus cannot test reboot immediately to check if X starts correctly. 
> 
> I am wondering, if I should delete this post, as it is certainly not of much value.  
> 
> I leave it to the moderator team to decide if its worth keeping it or if it should/can be deleted. In the meantime I put [solved] to its title

 

Sometimes simple solutions elude us the easiest  :Smile: 

----------

## Elleni

true   :Very Happy: 

----------

## NeddySeagoon

Elleni,

Please don't delete any posts, someone, sometime, may find it useful.

----------

