Re: firmware modules

From: LuMiWa <lumiwa_at_dismail.de>
Date: Thu, 20 Mar 2025 18:50:51 UTC
On Thu, 20 Mar 2025 11:40:58 -0700
Mark Millard <marklmi@yahoo.com> wrote:

> LuMiWa <lumiwa_at_dismail.de> wrote on
> Date: Thu, 20 Mar 2025 10:35:34 UTC :
> 
> > One question about kernel directories which are install firmware or
> > modules.
> > Packages from FreeBSD repositories installed firmware in
> > /boot/modules but packages from repositories kmdos installed in
> > /boot/firmware. I found this when I installed firmware for wifi
> > (iwifi...). Why is double standard? I have firmware for wifi in
> > both directories.
> 
> Looking in the two places in one of my contexts, I see:
> 
> # fwget
> Needed firmware packages: 'wifi-firmware-rtw89-kmod-rtw8852b
> gpu-firmware-amd-kmod-gc-10-3-6 gpu-firmware-amd-kmod-psp-13-0-5
> gpu-firmware-amd-kmod-dcn-3-1-5 gpu-firmware-amd-kmod-sdma-5-2-6
> gpu-firmware-amd-kmod-vcn-3-1-2' The most recent versions of packages
> are already installed
> 
> # find -s /boot/firmware/ /boot/modules/ -print
> /boot/firmware/
> /boot/firmware/amd-ucode.bin
> /boot/firmware/intel-ucode.bin
> /boot/firmware/iwm3160fw
> /boot/firmware/iwm3168fw
> /boot/firmware/iwm7260fw
> /boot/firmware/iwm7265Dfw
> /boot/firmware/iwm7265fw
> /boot/firmware/iwm8000C
> /boot/firmware/iwm8265fw
> /boot/firmware/iwm9000fw
> /boot/firmware/iwm9260fw
> /boot/firmware/rtw89
> /boot/firmware/rtw89/rtw8852b_fw-1.bin
> /boot/modules/
> /boot/modules/amdgpu_dcn_3_1_5_dmcub_bin.ko
> /boot/modules/amdgpu_gc_10_3_6_ce_bin.ko
> /boot/modules/amdgpu_gc_10_3_6_me_bin.ko
> /boot/modules/amdgpu_gc_10_3_6_mec2_bin.ko
> /boot/modules/amdgpu_gc_10_3_6_mec_bin.ko
> /boot/modules/amdgpu_gc_10_3_6_pfp_bin.ko
> /boot/modules/amdgpu_gc_10_3_6_rlc_bin.ko
> /boot/modules/amdgpu_psp_13_0_5_asd_bin.ko
> /boot/modules/amdgpu_psp_13_0_5_ta_bin.ko
> /boot/modules/amdgpu_psp_13_0_5_toc_bin.ko
> /boot/modules/amdgpu_sdma_5_2_6_bin.ko
> /boot/modules/amdgpu_vcn_3_1_2_bin.ko
> /boot/modules/linker.hints
> 
> Looking at just a few examples:
> 
> # file /boot/firmware/iwm3160fw
> /boot/firmware/rtw89/rtw8852b_fw-1.bin
> /boot/modules/amdgpu_dcn_3_1_5_dmcub_bin.ko
> /boot/modules/amdgpu_psp_13_0_5_toc_bin.ko /boot/firmware/iwm3160fw:
>                   data /boot/firmware/rtw89/rtw8852b_fw-1.bin:
> data /boot/modules/amdgpu_dcn_3_1_5_dmcub_bin.ko: ELF 64-bit LSB
> relocatable, x86-64, version 1 (FreeBSD),
> BuildID[sha1]=4b30b4248d57199be9498869d56e659ffbfa7050, not stripped
> /boot/modules/amdgpu_psp_13_0_5_toc_bin.ko:  ELF 64-bit LSB
> relocatable, x86-64, version 1 (FreeBSD),
> BuildID[sha1]=bd31f5c066ef6ea222807c901a5a2f6bba3690f5, not stripped
> 7950X3D-ZFS amd64  1500034 1500034 # 
> 
> It looks to me like some things involve loadable kernel
> modules that add code to into the kernel and some do not
> involve such. Those that do not are probably just loaded
> into a device that is using the material via the FreeBSD
> kernel. Which type of file looks to determine
> /boot/firmware/ vs. /boot/modules/ for where the files
> are put.
> 
> Also, I'll note that pkg puts things where FreeBSD is
> designed to have the files put. Pkg does not, of itself,
> determine where FreeBSD is designed to have the files.
> So where pkg put things is just following the FreeBSD
> rules for those things.
> 
> I've no clue if some of your materials are older from
> before the last time FreeBSD changed the designed
> organization. You might want to send out the output
> from the likes of:
> 
> # find -s /boot/firmware/ /boot/modules/ -print
> 
> That might give someone a clue about if it is an
> appropriate mix or not vs. if there is older material
> that should be uninstalled/deleted.
> 
> ===
> Mark Millard
> marklmi at yahoo.com
> 
> 
Thank you
I had wifi firmware before in /boot/modules when I pkg install from
FreeBSD repository and I have kmods repository now and put them in
/boot/firmware.


find -s /boot/firmware/ /boot/modules/ -print
/boot/firmware/
/boot/firmware/amd-ucode.bin
/boot/firmware/iwlwifi-3160-17.ucode
/boot/firmware/iwlwifi-3168-29.ucode
/boot/firmware/iwlwifi-7260-17.ucode
/boot/firmware/iwlwifi-7265-17.ucode
/boot/firmware/iwlwifi-7265D-29.ucode
/boot/firmware/iwlwifi-8000C-36.ucode
/boot/firmware/iwlwifi-8265-36.ucode
/boot/firmware/iwlwifi-9000-pu-b0-jf-b0-46.ucode
/boot/firmware/iwlwifi-9260-th-b0-jf-b0-46.ucode
/boot/firmware/iwlwifi-cc-a0-77.ucode
/boot/firmware/iwlwifi-gl-c0-fm-c0-83.ucode
/boot/firmware/iwlwifi-gl-c0-fm-c0-92.ucode
/boot/firmware/iwlwifi-gl-c0-fm-c0.pnvm
/boot/firmware/iwlwifi-ma-b0-gf-a0-83.ucode
/boot/firmware/iwlwifi-ma-b0-gf-a0-89.ucode
/boot/firmware/iwlwifi-ma-b0-gf-a0.pnvm
/boot/firmware/iwlwifi-ma-b0-gf4-a0-83.ucode
/boot/firmware/iwlwifi-ma-b0-gf4-a0-89.ucode
/boot/firmware/iwlwifi-ma-b0-gf4-a0.pnvm
/boot/firmware/iwlwifi-ma-b0-hr-b0-83.ucode
/boot/firmware/iwlwifi-ma-b0-hr-b0-89.ucode
/boot/firmware/iwlwifi-Qu-b0-hr-b0-77.ucode
/boot/firmware/iwlwifi-Qu-b0-jf-b0-77.ucode
/boot/firmware/iwlwifi-Qu-c0-hr-b0-77.ucode
/boot/firmware/iwlwifi-Qu-c0-jf-b0-77.ucode
/boot/firmware/iwlwifi-QuZ-a0-hr-b0-77.ucode
/boot/firmware/iwlwifi-QuZ-a0-jf-b0-77.ucode
/boot/firmware/iwlwifi-so-a0-gf-a0-77.ucode
/boot/firmware/iwlwifi-so-a0-gf-a0-83.ucode
/boot/firmware/iwlwifi-so-a0-gf-a0-89.ucode
/boot/firmware/iwlwifi-so-a0-gf-a0.pnvm
/boot/firmware/iwlwifi-so-a0-gf4-a0-77.ucode
/boot/firmware/iwlwifi-so-a0-gf4-a0.pnvm
/boot/firmware/iwlwifi-so-a0-hr-b0-77.ucode
/boot/firmware/iwlwifi-so-a0-hr-b0-83.ucode
/boot/firmware/iwlwifi-so-a0-hr-b0-89.ucode
/boot/firmware/iwlwifi-so-a0-jf-b0-77.ucode
/boot/firmware/iwlwifi-ty-a0-gf-a0-77.ucode
/boot/firmware/iwlwifi-ty-a0-gf-a0-83.ucode
/boot/firmware/iwlwifi-ty-a0-gf-a0-89.ucode
/boot/firmware/iwlwifi-ty-a0-gf-a0.pnvm
/boot/modules/
/boot/modules/acpi_call.ko
/boot/modules/amdgpu_picasso_asd_bin.ko
/boot/modules/amdgpu_picasso_ce_bin.ko
/boot/modules/amdgpu_picasso_gpu_info_bin.ko
/boot/modules/amdgpu_picasso_me_bin.ko
/boot/modules/amdgpu_picasso_mec_bin.ko
/boot/modules/amdgpu_picasso_mec2_bin.ko
/boot/modules/amdgpu_picasso_pfp_bin.ko
/boot/modules/amdgpu_picasso_rlc_am4_bin.ko
/boot/modules/amdgpu_picasso_rlc_bin.ko
/boot/modules/amdgpu_picasso_sdma_bin.ko
/boot/modules/amdgpu_picasso_ta_bin.ko
/boot/modules/amdgpu_picasso_vcn_bin.ko
/boot/modules/amdgpu_raven_asd_bin.ko
/boot/modules/amdgpu_raven_ce_bin.ko
/boot/modules/amdgpu_raven_dmcu_bin.ko
/boot/modules/amdgpu_raven_gpu_info_bin.ko
/boot/modules/amdgpu_raven_kicker_rlc_bin.ko
/boot/modules/amdgpu_raven_me_bin.ko
/boot/modules/amdgpu_raven_mec_bin.ko
/boot/modules/amdgpu_raven_mec2_bin.ko
/boot/modules/amdgpu_raven_pfp_bin.ko
/boot/modules/amdgpu_raven_rlc_bin.ko
/boot/modules/amdgpu_raven_sdma_bin.ko
/boot/modules/amdgpu_raven_ta_bin.ko
/boot/modules/amdgpu_raven_vcn_bin.ko
/boot/modules/amdgpu.ko
/boot/modules/dmabuf.ko
/boot/modules/drm.ko
/boot/modules/i915kms.ko
/boot/modules/linker.hints
/boot/modules/radeonkms.ko
/boot/modules/ttm.ko



-- 
“Doing nothing is better than being busy doing nothing.”
― Lao Tzu