View previous topic :: View next topic |
Author |
Message |
leyvi Guru

Joined: 08 Sep 2023 Posts: 420
|
Posted: Fri Sep 08, 2023 1:38 pm Post subject: Can't find firmware or drivers for latest-gen Radeon card |
|
|
Hello Gentoo community.
I am relatively new to the whole idea of free software, but as soon as I heard about it, I made a quick decent to the bottom of the rabbit hole, and ended up here. So please forgive me if I'm missing something obvious (though I doubt I am, as I've already consulted two people who work with the Linux kernel professionally about my issue).
I needed a new computer, so I decided to go full-DIY: I got all of the latest-generation hardware, and built my own PC. I installed Gentoo on it, and followed the official handbook, as well as several other sources. However, on boot, GRUB never handed off my hardware to my kernel, and on inspection of my kernel `.config` file, I realized that I hadn't included the firmware in the kernel (note: it is 100% monolithic). I assumed that it was installed with the `linux-firmware` package, however I couldn't find it in the `/lib/firmware/amdgpu` directory. I have an AMD Radeon RX7600 (Navi 33). I couldn't find any documentation on how to install firmware for my card anywhere, and while tools like `lspci -k -vvv` did show my device, there was nothing about the firmware or drivers. I have been banging my head against the wall for the past week trying to get this to work. Could someone please help me out?  |
|
Back to top |
|
 |
irets Apprentice


Joined: 17 Dec 2019 Posts: 234
|
Posted: Fri Sep 08, 2023 2:12 pm Post subject: |
|
|
Hi,
Are you able to get any pointers from here? |
|
Back to top |
|
 |
leyvi Guru

Joined: 08 Sep 2023 Posts: 420
|
Posted: Fri Sep 08, 2023 2:20 pm Post subject: Can't find firmware or drivers for latest-gen Radeon card |
|
|
Yes, I did look there. But I didn't find anything relevant. |
|
Back to top |
|
 |
irets Apprentice


Joined: 17 Dec 2019 Posts: 234
|
Posted: Fri Sep 08, 2023 2:32 pm Post subject: |
|
|
Could we see the output of emerge --info so we can see how your system is configured.
You should also post your kernel .config.
You can use pastebin services like ix.io.
As an example;
Code: | echo Hello world. | curl -F 'f:1=<-' ix.io |
|
|
Back to top |
|
 |
leyvi Guru

Joined: 08 Sep 2023 Posts: 420
|
|
Back to top |
|
 |
NeddySeagoon Administrator


Joined: 05 Jul 2003 Posts: 55340 Location: 56N 3W
|
Posted: Fri Sep 08, 2023 5:51 pm Post subject: |
|
|
leyvi,
Many potential helpers, me included, will not download random thing from the internet.
Please use wgetpaste.
This bug says that you need
Code: | AMD Navi33 needs new firmware
a1ad1d5b amdgpu: add VCN4.0.4 firmware from amd-5.4
9e01e17c amdgpu: add SMU13.0.7 firmware from amd-5.4
3a50eb85 amdgpu: add SDMA6.0.2 firmware from amd-5.4
19995fb2 amdgpu: add PSP13.0.7 firmware from amd-5.4
32e7c93c amdgpu: add GC11.0.2 firmware from amd-5.4
20c8060e amdgpu: add DCN3.2.1 firmware from amd-5.4 |
That may not be a complete list. vcn_4_0_4.bin, smu_13_0_7.bin are present, I've not checked the rest. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
 |
logrusx Advocate


Joined: 22 Feb 2018 Posts: 3064
|
Posted: Fri Sep 08, 2023 6:10 pm Post subject: |
|
|
leyvi wrote: | I realized that I hadn't included the firmware in the kernel (note: it is 100% monolithic). I assumed that it was installed with the `linux-firmware` package, however I couldn't find it in the `/lib/firmware/amdgpu` directory. |
Are you sure you have linux-firmware emerged?
Best Regards,
Georgi |
|
Back to top |
|
 |
pietinger Moderator

Joined: 17 Oct 2006 Posts: 5787 Location: Bavaria
|
|
Back to top |
|
 |
leyvi Guru

Joined: 08 Sep 2023 Posts: 420
|
Posted: Sat Sep 09, 2023 5:11 pm Post subject: Can't find firmware or drivers for latest-gen Radeon card |
|
|
Thanks everyone!
I'll give your solutions a shot... |
|
Back to top |
|
 |
leyvi Guru

Joined: 08 Sep 2023 Posts: 420
|
Posted: Sat Sep 09, 2023 7:02 pm Post subject: Can't find firmware or drivers for latest-gen Radeon card |
|
|
Ok, I tried including those .bin files in my kernel.
This had no effect. GRUB still shows the default message printed with the echo command.
I'm thinking that maybe instead of writing the list of specific firmware BLOBs in menuconfig, maybe I should just put a '*', so that all BLOBs in /lib/firmware/amdgpu will be in my kernel? Would that work? Or would the kernel not know which one to use?
What should I try next? |
|
Back to top |
|
 |
NeddySeagoon Administrator


Joined: 05 Jul 2003 Posts: 55340 Location: 56N 3W
|
Posted: Sat Sep 09, 2023 7:07 pm Post subject: |
|
|
leyvi,
You can't use a wildcard there, so no.
make amdgpu a loadable module and turn on the Gentoo option to list firmware as it loads.
Once you have the list, I need about 20 files, you can build them into the kernel.
That will work until AMD add a new file, which happens from time to time.
You could also set up sshd and log in remotely. dmesg will tell you the first file that is missing. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
 |
leyvi Guru

Joined: 08 Sep 2023 Posts: 420
|
Posted: Sat Sep 09, 2023 7:54 pm Post subject: Can't find firmware or drivers for latest-gen Radeon card |
|
|
Ok, so it turns out that making the AMD GPU module loadable DID actually make it work, so thank you very much. I'm not going to mess with it further; at this point, I don't really want to mess with what works.
Thanks everyone for your time and patience! Overall one of the best experiences I've ever had in a support forum for anything computer related. |
|
Back to top |
|
 |
NeddySeagoon Administrator


Joined: 05 Jul 2003 Posts: 55340 Location: 56N 3W
|
Posted: Sat Sep 09, 2023 8:06 pm Post subject: |
|
|
leyvi,
If you have the firmware list from dmesg, please post it.
It will help others after you.
The Wiki could use an update for navi33 too. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
 |
pietinger Moderator

Joined: 17 Oct 2006 Posts: 5787 Location: Bavaria
|
Posted: Sat Sep 09, 2023 8:26 pm Post subject: |
|
|
leyvi wrote: | Ok, so it turns out that making the AMD GPU module loadable DID actually make it work, so thank you very much. I'm not going to mess with it further; at this point, I don't really want to mess with what works. |
Thats okay ... but ... only for the future:
If you add some file names in your kernel config in the line CONFIG_EXTRA_FIRMWARE ... you must recompile (=make) your kernel again (because only then these modules will be copied "into" the kernel; as I wrote in my wiki article) (and of course you must install this new kernel also like you do with a new version; if you use grub => "grub-mkconfig").
As Neddy already said, please give us a list of your used firmware files; best with: "dmesg | grep firmware". |
|
Back to top |
|
 |
leyvi Guru

Joined: 08 Sep 2023 Posts: 420
|
Posted: Sat Sep 09, 2023 11:32 pm Post subject: Can't find firmware or drivers for latest-gen Radeon card |
|
|
Will do. Wait one moment please. Firefox is still emerging on my new computer... |
|
Back to top |
|
 |
leyvi Guru

Joined: 08 Sep 2023 Posts: 420
|
Posted: Sun Sep 10, 2023 12:02 am Post subject: |
|
|
Here is the output of Code: | dmesg | grep firmware | :
[ 0.056282] Spectre V2 : Enabling Restricted Speculation for firmware calls
[ 0.830469] Loading firmware: regulatory.db
[ 0.830621] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 3.851812] Loading firmware: amdgpu/gc_11_0_2_mes_2.bin
[ 3.852948] Loading firmware: amdgpu/gc_11_0_2_mes1.bin
[ 3.853769] Loading firmware: amdgpu/psp_13_0_7_sos.bin
[ 3.854249] Loading firmware: amdgpu/psp_13_0_7_ta.bin
[ 3.854710] Loading firmware: amdgpu/smu_13_0_7.bin
[ 3.854717] Loading firmware: amdgpu/dcn_3_2_1_dmcub.bin
[ 3.854717] [drm] Loading DMUB firmware via PSP: version=0x07001A00
[ 3.854722] Loading firmware: amdgpu/gc_11_0_2_imu.bin
[ 3.855048] Loading firmware: amdgpu/gc_11_0_2_pfp.bin
[ 3.855404] Loading firmware: amdgpu/gc_11_0_2_me.bin
[ 3.855635] Loading firmware: amdgpu/gc_11_0_2_rlc.bin
[ 3.855880] Loading firmware: amdgpu/gc_11_0_2_mec.bin
[ 3.856800] Loading firmware: amdgpu/sdma_6_0_2.bin
[ 3.856956] Loading firmware: amdgpu/vcn_4_0_4.bin
[ 3.856957] [drm] Found VCN firmware Version ENC: 1.11 DEC: 5 VEP: 0 Revision: 12
[ 3.856961] amdgpu 0000:03:00.0: amdgpu: Will use PSP to load VCN firmware
[ 4.427925] Loading firmware: amdgpu/psp_13_0_5_toc.bin
[ 4.427945] Loading firmware: amdgpu/psp_13_0_5_ta.bin
[ 4.428232] Loading firmware: amdgpu/dcn_3_1_5_dmcub.bin
[ 4.428600] [drm] Loading DMUB firmware via PSP: version=0x05000C00
[ 4.428606] Loading firmware: amdgpu/gc_10_3_6_pfp.bin
[ 4.428907] Loading firmware: amdgpu/gc_10_3_6_me.bin
[ 4.429208] Loading firmware: amdgpu/gc_10_3_6_ce.bin
[ 4.429503] Loading firmware: amdgpu/gc_10_3_6_rlc.bin
[ 4.429742] Loading firmware: amdgpu/gc_10_3_6_mec.bin
[ 4.430032] Loading firmware: amdgpu/gc_10_3_6_mec2.bin
[ 4.430635] Loading firmware: amdgpu/sdma_5_2_6.bin
[ 4.430791] Loading firmware: amdgpu/vcn_3_1_2.bin
[ 4.431385] [drm] Found VCN firmware Version ENC: 1.27 DEC: 2 VEP: 0 Revision: 0
[ 4.431390] amdgpu 0000:0f:00.0: amdgpu: Will use PSP to load VCN firmware
I hope that this is helpful. |
|
Back to top |
|
 |
NeddySeagoon Administrator


Joined: 05 Jul 2003 Posts: 55340 Location: 56N 3W
|
Posted: Sun Sep 10, 2023 9:23 am Post subject: |
|
|
leyvi,
Thank you.
Code: | [ 0.830469] Loading firmware: regulatory.db
[ 0.830621] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2 |
That means that your wifi is set up suboptimally.
It may work with world wide TX powers and Channels but that database provides regional data on permitted Tx powers and channels.
Its a good thing to have if you are a wifi user. If not, you don't care.
The amdgpu firmware list is useful. If you really want a monolithic kernel build in all in.
Its a lot more than I expected. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
 |
logrusx Advocate


Joined: 22 Feb 2018 Posts: 3064
|
Posted: Sun Sep 10, 2023 9:56 am Post subject: |
|
|
leyvi wrote: | Will do. Wait one moment please. Firefox is still emerging on my new computer... |
Leyvi,
Could you add lsmod output for me please? I need it to cross-reference another issue related to amdgpu.
Thanks in advance!
Best Regards,
Georgi |
|
Back to top |
|
 |
leyvi Guru

Joined: 08 Sep 2023 Posts: 420
|
Posted: Sun Sep 10, 2023 9:59 am Post subject: |
|
|
logrusx wrote: | leyvi wrote: | Will do. Wait one moment please. Firefox is still emerging on my new computer... |
Leyvi,
Could you add lsmod output for me please? I need it to cross-reference another issue related to amdgpu.
Thanks in advance!
Best Regards,
Georgi |
Ok, what exactly are you looking for? |
|
Back to top |
|
 |
leyvi Guru

Joined: 08 Sep 2023 Posts: 420
|
Posted: Sun Sep 10, 2023 10:21 am Post subject: |
|
|
Since (at least from what I hear) having to type long lists of files in menuconfig to make Radeon cards work with monolithic kernels seems to be a recurring issue, maybe, for the sake of convenience, some sort of change could be made to the kernel build system to allow the contents of a directory (firmware blobs) to be copied into the kernel, and then subfolders could be made in the /lib/firmware/amdgpu directory containing symbolic links to the firmware blobs needed for a common graphics card. In my situation, that might look like this:
Code: | /lib/firmware/amdgpu/navi_33:
sdma.bin -> ../sdma_6_0_2.bin |
And so on and so forth. Every time a new version of a firmware blob is released, the symlink in the package could be changed to reference the latest version.
Please note that this is just an idea, and that I have no experience with contributing to open source software. However, this may make using AMD’s newest cards more accessible to those with less technical skills or experience, and in any case, it would make setting up or updating the firmware for these peripherals less tedious. |
|
Back to top |
|
 |
NeddySeagoon Administrator


Joined: 05 Jul 2003 Posts: 55340 Location: 56N 3W
|
Posted: Sun Sep 10, 2023 10:53 am Post subject: |
|
|
leyvi,
In this instance only it is safe to put one or two file into EXTRA_FIRMWARE the hard way, so you get the Selects: into the kernel .config then to use $EDITOR on the EXTRA_FIRMWARE="" entry.
It must be one very long line. Copy/paste helps minimise typos.
You must never use $EDITOR anywhere else in the kernel .config as you will miss the Selects: options that the config tools do without asking/telling you. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
 |
logrusx Advocate


Joined: 22 Feb 2018 Posts: 3064
|
Posted: Sun Sep 10, 2023 1:28 pm Post subject: |
|
|
leyvi wrote: | logrusx wrote: | leyvi wrote: | Will do. Wait one moment please. Firefox is still emerging on my new computer... |
Leyvi,
Could you add lsmod output for me please? I need it to cross-reference another issue related to amdgpu.
Thanks in advance!
Best Regards,
Georgi |
Ok, what exactly are you looking for? |
Ah, I forgot everything was compile into the kernel for your setup. I refrain from saying a monolithic kernel because that's another thing, but people seem to be incorrectly using it.
Best Regards,
Georgi |
|
Back to top |
|
 |
|