- update framework to no longer depend on local distfiles for firmware(9) but generate the Makefile hierarchy in post-extract. Keep a Makefile.inc.in in files for simplicity.
- update extracting WHENCE parts using a local WHENCE.awk.in in files and a pattern to match the section(s).
- use the already prepared FWSUBS sections for flavors and add the FWDRV as "default". Generate the CONFLICTS_INSTALL conflict and PKGNAMESUFFIX entries. Adjust paths and logic for flavors. Depend on the flavors rather the combined ("default flavor") packages by default if someone installs wifi-firmware-kmod. The wifi-firmware-${name}-kmod packages are still built for older versions of fwget shipping in releases.
- add support for iwlwifi and ath12k firmware
- update firmware to linux-firmware.git tag: 20240410 for all drivers.
TODOs for the next iteration (to ease review for the current changes):
- use plain firmware files and no longer .ko where supported (currently in main)
- add the logic to deal with different versions and sets of files in different branches; currently this is still the old "one size fits all" logic which currently likely works for all but iwlwifi but for that stable branches still have firmware in src so we should be good.
Sponsored by: The FreeBSD Foundation