LinuxKPI based WiFi drivers: scripts to extract fwget(8) and port detailsAdd a "zzz_fw_ports_fwget.sh" script to each LinuxKPI based wirelessdriver which in essential are all the same and in detai
LinuxKPI based WiFi drivers: scripts to extract fwget(8) and port detailsAdd a "zzz_fw_ports_fwget.sh" script to each LinuxKPI based wirelessdriver which in essential are all the same and in detail all different.The scripts have been referenced in fwget(8) sources since d33f5a0afa54bbut were never committed.The scripts do the full job compared to `single-line-scripts` I tried touse before to ease maintainance life. Some use hacks like calling cppand extracting bits from the output to piece them together over multiplefiles. It will be left as an exercise for the future to see if what wasdone (a longer while ago) for iwlwifi(4) would be a good idea for someother drivers too, to have a FreeBSD-specific sysctl to export some ofthe accumulated data in an easily processable way.The scripts are written in the "perl spirit" -- "to get the job done" --and not to be nice or neat or efficient. For that we do not need themoften enough or in any critical path. People are welcome to improvethem if they feel like.I've used them for two version updates now and even if ports enforcesome other (manual) editing to keep support for multiple branches fornow they worked extremly well.For the most the scripts extract 2 parts: PCI IDs and firmware name;then they add "flavor"s to both and put the information together.That output is then separated into:- fwget(8) lines of PCI ID to port/package wifi-firmware-${name}-kmod-${flavor} mappings and- distfiles per flavor for the ports.- For iwlwififw(4) we also generate the tables for the man page (and the wiki) and hopefully the .Sh HARDWARE section for iwlwifi.4 soon too.Depending on driver various other checks are done, e.g.,- does the PCI ID have one or more firmware files/flavors associated,- does the referenced firmware exist in the linux-firmware.git repo,- are there duplicates,- find the latest version of the firmware API.Sponsored by: The FreeBSD FoundationSuggested by: imp (to have automation in D44918)MFC after: 3 days
show more ...
mt76: add mt7615 to the pile of buildable driversIgnoring page_pools with the few needed adjustments and ignoring 7622mt7615 seems to build as well. Add it so once we can connect it tothe build
mt76: add mt7615 to the pile of buildable driversIgnoring page_pools with the few needed adjustments and ignoring 7622mt7615 seems to build as well. Add it so once we can connect it tothe build people can start testing and debugging.(The actual work was done on a newer version of the mt76 drivers butit seems the to-build-changes equally apply here already).Requested by: Radu-Cristian Fotescu (freebsd-wireless, 2024-07-31)Sponsored by: The FreeBSD FoundationMFC after: 3 days
mt76: update driver from upstreamThis is a set of updates of the mt76 driver based on wireless-testing(wt-2023-05-11) 711dca0ca3d77414f8f346e564e9c8640147f40d (after v6.4-rc1), This adds support
mt76: update driver from upstreamThis is a set of updates of the mt76 driver based on wireless-testing(wt-2023-05-11) 711dca0ca3d77414f8f346e564e9c8640147f40d (after v6.4-rc1), This adds support for mt7996 as well.(wt-2023-06-09) 7bd20e011626ccc3ad53e57873452b1716fcfaaa (after v6.4-rc5),(wt-2023-07-24) 62e409149b62a285e89018e49b2e115757fb9022 (after v6.5-rc3),(wt-2023-08-06) 2a220a15be657a24868368892e3e2caba2115283 (after v6.5-rc4).The current version of LinuxKPI lacks support for "page pool" whichneeds enhancing and updating a decade or so old shortcut mappingstruct page directly to struct vm_page.MFC after: 20 days
mt76: import mediatek/mt76 driverImport ISC-licensed driver parts of mediatek/mt76assumed to be based on Linux wireless-testing ata02411a5b98612c12be99349836d99f07db12a77 (tag: wt-2022-11-23).C
mt76: import mediatek/mt76 driverImport ISC-licensed driver parts of mediatek/mt76assumed to be based on Linux wireless-testing ata02411a5b98612c12be99349836d99f07db12a77 (tag: wt-2022-11-23).Complement the driver and LinuxKPI with our own (dummy)implementations of missing parts (util.h and soc/mediatek/)as well as changes to make compile on FreeBSD with changescovered by #ifdef (__FreeBSD__) conditions.Further select updates were applied since the initial importin order to keep compiling along with other LinuxKPI baseddrivers.For the moment we only target the mt7915 and mt7921 PCI parts.More may follow in the future.Firmware is provided by port net/wifi-firmware-mt76-kmod.Given the lack of full license texts on non-local files this isimported under the draft policy for handling SPDX files (D29226). [1]Approved by: core (emaste, 2022-04-08) [1]MFC after: 2 months