Takashi Iwai
7fe144d0e2
- Update to version 20231006 (git commit 389575a8a177) (jsc#PED-6130, jsc#PED-6081): * WHENCE: add symlink for BananaPi M64 * linux-firmware: Add firmware file for Intel Bluetooth AX211 * linux-firmware: Update firmware file for Intel Bluetooth AX201 * linux-firmware: Update firmware file for Intel Bluetooth AX201 * linux-firmware: Update firmware file for Intel Bluetooth AX211 * linux-firmware: Update firmware file for Intel Bluetooth AX211 * linux-firmware: Update firmware file for Intel Bluetooth AX210 * linux-firmware: Update firmware file for Intel Bluetooth 9560 * linux-firmware: Update firmware file for Intel Bluetooth 9260 * Build debian and fedora images * Add new Makefile target to build a deb and rpm package * i915: Update MTL DMC to v2.17 * iwlwifi: add FWs for new GL and MA device types with multiple RF modules * amd_pmf: Add initial PMF TA for Smart PC Solution Builder * linux-firmware: Update FW files for MRVL PCIE 8997 chipsets * rtl_bt: Update RTL8851B BT USB firmware to 0x048A_D230 * iwlwifi: add new FWs from core81-65 release * iwlwifi: update cc/Qu/QuZ firmwares for core81-65 release - Drop fdupes to avoid missing files for split packages (bsc#1215464) - Add conflicts to each split subpk against uncompressed raw package; the contents may conflict and the compressed files won't be effective unless the raw files get removed - Update aliases OBS-URL: https://build.opensuse.org/request/show/1116463 OBS-URL: https://build.opensuse.org/package/show/Kernel:HEAD/kernel-firmware?expand=0&rev=443 |
||
---|---|---|
_constraints | ||
_multibuild | ||
_service | ||
_servicedata | ||
.gitattributes | ||
.gitignore | ||
aliases.list | ||
ast_dp501_fw.bin | ||
check-topic.py | ||
copy-file-ignore-README.patch | ||
extrawhence | ||
fwtopics.py | ||
get_supplements.sh | ||
iwlwifi-cc-a0-71.ucode | ||
iwlwifi-Qu-b0-hr-b0-71.ucode | ||
iwlwifi-Qu-b0-jf-b0-71.ucode | ||
iwlwifi-Qu-c0-hr-b0-71.ucode | ||
iwlwifi-Qu-c0-jf-b0-71.ucode | ||
iwlwifi-QuZ-a0-hr-b0-71.ucode | ||
iwlwifi-QuZ-a0-jf-b0-71.ucode | ||
iwlwifi-so-a0-gf4-a0-71.ucode | ||
iwlwifi-so-a0-gf-a0-71.ucode | ||
iwlwifi-so-a0-hr-b0-71.ucode | ||
iwlwifi-so-a0-jf-b0-71.ucode | ||
iwlwifi-ty-a0-gf-a0-71.ucode | ||
iwlwifi-WHENCE-fix.patch | ||
kernel-firmware-20231006.tar.xz | ||
kernel-firmware-rpmlintrc | ||
kernel-firmware.changes | ||
kernel-firmware.spec | ||
kernel-firmware.spec.in | ||
licenses.list | ||
list-license.sh | ||
make-files.sh | ||
makespec.sh | ||
qcom-post | ||
ql2600_fw.bin | ||
ql2700_fw.bin | ||
ql8300_fw.bin | ||
README.build | ||
topicdefs | ||
topicprovs | ||
topics.list | ||
uncompressed-post | ||
update-aliases.py |
FILES ===== topicdefs: Definitions of each flavor (topic) and description; the description is filled into spec file topicprovs: Additional Provides and Obsoletes of each topic topics.list: Mapping between WHENCE entries and topics. Each line consists of two or more items. The first column is the first word of the WHENCE "Driver:" entry line to match. The second column is the topic/flavor, and the rest columns are the module names. If no module name is provided, the same word as the first column is used as the module name. The validity with the latest kernel binary packages can be checked with check-topic.py script below. licenses.list: List of license files for each WHENCE entry. aliases.list: List of module aliases for each module. This is updated by update-alises.py script below. extrawhence: Additional WHENCE entries for the own firmware files. kernel-firmware.spec.in: The spec file template. Edit this and generate kernel-firmware.spec dynamically via makespec.sh script. makespec.sh: A script to combine the spec template and other info into the final kernel-firmware.spec. check-topic.py: A program to check the validity of topics.list. Pass the latest WHENCE file and the kernel RPM files to verify. update-aliases.py: A program to update aliases.list from the latest kernel RPM files. Pass kernel RPM files as arguments. install-split.sh: A helper script to copy the files based on WHENCE like the above, but also to create a file list for each topic in files-$TOPIC file. The installed files are compressed with xz, as well as symlinks. list-license.sh: A helper script to add file list entries for the corresponding license files for each topic. It parses licenses.list. get_supplements.sh: A helper script to create Supplements entries for each topic from aliases.list above. MAINTENANCE WORKS ================= Upon the update of linux-firmware.git ------------------------------------- update the kernel-firmware tarball as usual: % cd linux-firmware % git archive --format=tar --prefix=kernel-firmware-$version/ -v master ./ \ | xz -9 -M 4G --check=crc32 -T 4 > /tmp/kernel-firmware-$version.tar.xz Run check-topic.py to verify whether new entries are added: % python3 ./check-topic.py /somewhere/WHENCE /rpms/kernel-default-*.rpm Update topics.list accordingly if new entry was added or updated in WHENCE: If new modules are added, update aliases.list as well: % python3 ./update-aliases.py /rpms/kernel-default-*.rpm After the update of these files, recreate kernel-firmware.spec by makespec.sh script: % sh ./makespec.sh 20190712 < kernel-firmware.spec.in > kernel-firmware.spec where the argument is the version of the kernel firmware package. And, don't forget to update kernel-firmware.changes accordingly. Upon the update of kernel binary rpms ------------------------------------- Again, run check-topic.py and update-aliases.py for the new kernel RPM files, and rebuild kernel-firmware.spec. Adding own firmware binaries ---------------------------- The new packaging relies purely on WHENCE file for counting the installed files. You have to either patch WHENCE file or put your own stuff into extrawhence file, at least with "Driver:" and "File" entries. The extrawhence file is concatenated to WHENCE file at building a package. Creating a new kernel-firmware subpackage flavor ------------------------------------------------ Edit topicdefs file and add the new entry, and update topics.list and licenses.list accordingly (these have to be updated manually).