Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Problem with building the kernel with built-in firmware
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
radekm
n00b
n00b


Joined: 12 Aug 2018
Posts: 6
Location: Warsaw

PostPosted: Sat Apr 13, 2024 5:09 pm    Post subject: Problem with building the kernel with built-in firmware Reply with quote

Hello everyone,
I have a problem with building the kernel.
The kernel can be built without errors if I don't try to add the amdgpu Renoir firmware to it.
I would like to build a kernel fitted to my computer and without initramfs.
My computer will already start on this kernel, but I still need to add the amdgpu firmware

My linux kernel: 6.8.4 gentoo

Error: "No rule to make target '/lib/firmware/amdgpu/renoir_{asd,ce,dmcub,gpu_info,me,mec2,mec,pfp,rlc,sdma,ta,vcn}.bin', needed by 'drivers/base/firmware_loader/builtin/amdgpu/renoir_{asd,ce,dmcub,gpu_info,me,mec2,mec,pfp,rlc,sdma,ta,vcn}.bin.gen.o'. Stop."

Code:

radek@acer5x /usr/src/linux $ ls -la /lib/firmware/amdgpu/renoir*
-rw-r--r-- 1 root root 188928 04-13 17:58 /lib/firmware/amdgpu/renoir_asd.bin
-rw-r--r-- 1 root root   9344 04-13 17:58 /lib/firmware/amdgpu/renoir_ce.bin
-rw-r--r-- 1 root root 121608 04-13 17:58 /lib/firmware/amdgpu/renoir_dmcub.bin
-rw-r--r-- 1 root root    316 04-13 17:58 /lib/firmware/amdgpu/renoir_gpu_info.bin
-rw-r--r-- 1 root root  17536 04-13 17:58 /lib/firmware/amdgpu/renoir_me.bin
-rw-r--r-- 1 root root 268048 04-13 17:58 /lib/firmware/amdgpu/renoir_mec.bin
-rw-r--r-- 1 root root 268048 04-13 17:58 /lib/firmware/amdgpu/renoir_mec2.bin
-rw-r--r-- 1 root root  21632 04-13 17:58 /lib/firmware/amdgpu/renoir_pfp.bin
-rw-r--r-- 1 root root  39928 04-13 17:58 /lib/firmware/amdgpu/renoir_rlc.bin
-rw-r--r-- 1 root root  17408 04-13 17:58 /lib/firmware/amdgpu/renoir_sdma.bin
-rw-r--r-- 1 root root  41984 04-13 17:58 /lib/firmware/amdgpu/renoir_ta.bin
-rw-r--r-- 1 root root 403392 04-13 17:58 /lib/firmware/amdgpu/renoir_vcn.bin


radek@acer5x /usr/src/linux $ cat .config| grep firmware
CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware"

radek@acer5x /usr/src/linux $ cat .config|grep renoir
CONFIG_EXTRA_FIRMWARE="amdgpu/renoir_{asd,ce,dmcub,gpu_info,me,mec2,mec,pfp,rlc,sdma,ta,vcn}.bin"

What I do wrong? Please help.
Back to top
View user's profile Send private message
sdauth
Guru
Guru


Joined: 19 Sep 2018
Posts: 569
Location: Ásgarðr

PostPosted: Sat Apr 13, 2024 5:13 pm    Post subject: Reply with quote

Hello,
I could be wrong but what happens if you avoid using {} and set EXTRA_FIRMWARE like this :

amdgpu/renoir_asd.bin amdgpu/renoir_ce.bin amdgpu/renoir_dmcub.bin amdgpu/renoir_gpu_info.bin amdgpu/renoir_me.bin amdgpu/renoir_mec2.bin amdgpu/renoir_mec.bin amdgpu/renoir_pfp.bin amdgpu/renoir_rlc.bin amdgpu/renoir_sdma.bin amdgpu/renoir_ta.bin amdgpu/renoir_vcn.bin

?
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54272
Location: 56N 3W

PostPosted: Sat Apr 13, 2024 5:48 pm    Post subject: Reply with quote

radekm'

List each file separately. Its a space separated list.

Code:
$ grep FIRMWARE /usr/src/linux/.config
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_EXTRA_FIRMWARE="amdgpu/navy_flounder_ce.bin amdgpu/navy_flounder_rlc.bin amdgpu/navy_flounder_dmcub.bin amdgpu/navy_flounder_sdma.bin amdgpu/navy_flounder_me.bin amdgpu/navy_flounder_smc.bin amdgpu/navy_flounder_mec2.bin amdgpu/navy_flounder_sos.bin amdgpu/navy_flounder_mec.bin amdgpu/navy_flounder_ta.bin amdgpu/navy_flounder_pfp.bin amdgpu/navy_flounder_vcn.bin amdgpu/polaris12_32_mc.bin amdgpu/polaris12_ce_2.bin amdgpu/polaris12_ce.bin amdgpu/polaris12_k_mc.bin amdgpu/polaris12_k_smc.bin amdgpu/polaris12_mc.bin amdgpu/polaris12_me_2.bin amdgpu/polaris12_me.bin amdgpu/polaris12_mec2_2.bin amdgpu/polaris12_mec_2.bin amdgpu/polaris12_mec2.bin amdgpu/polaris12_mec.bin amdgpu/polaris12_pfp_2.bin amdgpu/polaris12_pfp.bin amdgpu/polaris12_rlc.bin amdgpu/polaris12_sdma1.bin amdgpu/polaris12_sdma.bin amdgpu/polaris12_smc.bin amdgpu/polaris12_uvd.bin amdgpu/polaris12_vce.bin amdgpu/polaris11_ce.bin amdgpu/polaris11_ce_2.bin amdgpu/polaris11_k2_smc.bin amdgpu/polaris11_k_mc.bin amdgpu/polaris11_k_smc.bin amdgpu/polaris11_mc.bin amdgpu/polaris11_me_2.bin amdgpu/polaris11_me.bin amdgpu/polaris11_mec2.bin amdgpu/polaris11_mec2_2.bin  amdgpu/polaris11_mec.bin amdgpu/polaris11_mec_2.bin amdgpu/polaris11_pfp.bin amdgpu/polaris11_pfp_2.bin amdgpu/polaris11_rlc.bin amdgpu/polaris11_sdma1.bin amdgpu/polaris11_sdma.bin amdgpu/polaris11_smc.bin amdgpu/polaris11_smc_sk.bin amdgpu/polaris11_uvd.bin amdgpu/polaris11_vce.bin amd-ucode/microcode_amd.bin amd-ucode/microcode_amd_fam15h.bin amd-ucode/microcode_amd_fam16h.bin amd-ucode/microcode_amd_fam17h.bin"
CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware/"


That CONFIG_EXTRA_FIRMWARE= is one huge line.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
radekm
n00b
n00b


Joined: 12 Aug 2018
Posts: 6
Location: Warsaw

PostPosted: Sat Apr 13, 2024 5:51 pm    Post subject: Reply with quote

sdauth wrote:
Hello,
I could be wrong but what happens if you avoid using {} and set EXTRA_FIRMWARE like this :

amdgpu/renoir_asd.bin amdgpu/renoir_ce.bin amdgpu/renoir_dmcub.bin amdgpu/renoir_gpu_info.bin amdgpu/renoir_me.bin amdgpu/renoir_mec2.bin amdgpu/renoir_mec.bin amdgpu/renoir_pfp.bin amdgpu/renoir_rlc.bin amdgpu/renoir_sdma.bin amdgpu/renoir_ta.bin amdgpu/renoir_vcn.bin

?

I tried this and it works. :D Thank you very much
Back to top
View user's profile Send private message
radekm
n00b
n00b


Joined: 12 Aug 2018
Posts: 6
Location: Warsaw

PostPosted: Sat Apr 13, 2024 5:53 pm    Post subject: Reply with quote

NeddySeagoon wrote:
radekm'

List each file separately. Its a space separated list.

Code:
$ grep FIRMWARE /usr/src/linux/.config
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_EXTRA_FIRMWARE="amdgpu/navy_flounder_ce.bin amdgpu/navy_flounder_rlc.bin amdgpu/navy_flounder_dmcub.bin amdgpu/navy_flounder_sdma.bin amdgpu/navy_flounder_me.bin amdgpu/navy_flounder_smc.bin amdgpu/navy_flounder_mec2.bin amdgpu/navy_flounder_sos.bin amdgpu/navy_flounder_mec.bin amdgpu/navy_flounder_ta.bin amdgpu/navy_flounder_pfp.bin amdgpu/navy_flounder_vcn.bin amdgpu/polaris12_32_mc.bin amdgpu/polaris12_ce_2.bin amdgpu/polaris12_ce.bin amdgpu/polaris12_k_mc.bin amdgpu/polaris12_k_smc.bin amdgpu/polaris12_mc.bin amdgpu/polaris12_me_2.bin amdgpu/polaris12_me.bin amdgpu/polaris12_mec2_2.bin amdgpu/polaris12_mec_2.bin amdgpu/polaris12_mec2.bin amdgpu/polaris12_mec.bin amdgpu/polaris12_pfp_2.bin amdgpu/polaris12_pfp.bin amdgpu/polaris12_rlc.bin amdgpu/polaris12_sdma1.bin amdgpu/polaris12_sdma.bin amdgpu/polaris12_smc.bin amdgpu/polaris12_uvd.bin amdgpu/polaris12_vce.bin amdgpu/polaris11_ce.bin amdgpu/polaris11_ce_2.bin amdgpu/polaris11_k2_smc.bin amdgpu/polaris11_k_mc.bin amdgpu/polaris11_k_smc.bin amdgpu/polaris11_mc.bin amdgpu/polaris11_me_2.bin amdgpu/polaris11_me.bin amdgpu/polaris11_mec2.bin amdgpu/polaris11_mec2_2.bin  amdgpu/polaris11_mec.bin amdgpu/polaris11_mec_2.bin amdgpu/polaris11_pfp.bin amdgpu/polaris11_pfp_2.bin amdgpu/polaris11_rlc.bin amdgpu/polaris11_sdma1.bin amdgpu/polaris11_sdma.bin amdgpu/polaris11_smc.bin amdgpu/polaris11_smc_sk.bin amdgpu/polaris11_uvd.bin amdgpu/polaris11_vce.bin amd-ucode/microcode_amd.bin amd-ucode/microcode_amd_fam15h.bin amd-ucode/microcode_amd_fam16h.bin amd-ucode/microcode_amd_fam17h.bin"
CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware/"


That CONFIG_EXTRA_FIRMWARE= is one huge line.
Thank you very much it works :)
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum