aboutsummaryrefslogtreecommitdiff
path: root/sys/contrib/dev/athk
Commit message (Collapse)AuthorAgeFilesLines
* ath11k: start making compile some moreBjoern A. Zeeb9 days2-0/+6
| | | | | There is more work to do to make this compile again but we will do that when we get to the driver. For now just take the most noise out of it.
* ath11k: update Atheros/QCA's ath11k driverBjoern A. Zeeb9 days67-2069/+4853
| | | | | | | | | | This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 7d0a66e4bb9081d75c82ec4957c50034cb0ea449 ( tag: v6.18 ). Merge commit '989a88787ef2c1a73f44b82031a6f4f4470e2676' Sponsored by: The FreeBSD Foundation
* ath10k: update Atheros/QCA's ath10k driverBjoern A. Zeeb9 days47-574/+1009
| | | | | | | | | | This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 7d0a66e4bb9081d75c82ec4957c50034cb0ea449 ( tag: v6.18 ). Merge commit 'f4669ef6cf7860919442e67106e83f616ed36f51'. Sponsored by: The FreeBSD Foundation
* ath-common: update common Atheros/QCA codeBjoern A. Zeeb9 days9-20/+177
| | | | | | | | This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git e5f0a698b34ed76002dc5cff3804a61c80233a7a ( tag: v6.17 ). Merge commit '99ad6f4f54c86845d6e3f03541913c07fcdeef59'
* LinuxKPI based WiFi drivers: scripts to extract fwget(8) and port detailsBjoern A. Zeeb2024-10-173-0/+913
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a "zzz_fw_ports_fwget.sh" script to each LinuxKPI based wireless driver which in essential are all the same and in detail all different. The scripts have been referenced in fwget(8) sources since d33f5a0afa54b but were never committed. The scripts do the full job compared to `single-line-scripts` I tried to use before to ease maintainance life. Some use hacks like calling cpp and extracting bits from the output to piece them together over multiple files. It will be left as an exercise for the future to see if what was done (a longer while ago) for iwlwifi(4) would be a good idea for some other drivers too, to have a FreeBSD-specific sysctl to export some of the 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 them often enough or in any critical path. People are welcome to improve them if they feel like. I've used them for two version updates now and even if ports enforce some other (manual) editing to keep support for multiple branches for now 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 Foundation Suggested by: imp (to have automation in D44918) MFC after: 3 days
* ath10k/rtw89: make compile again after LinuxKPI changesBjoern A. Zeeb2024-01-081-0/+1
| | | | | | | | | | | | | | | Both drivers are not yet attached to the build so this change is for people currently trying them out. In 96ab16ebab6319dce9b3041961b0ab6e20a4fecc the sys/rman.h include was removed. In various wireless drivers we prefer to directly use bus_dma functions rather than io* LinuxKPI once. In order to cast the pointer we need sys/rman.h back for our native 'struct resource' in their pci.c implementations. Long-term we should consider providing some lkpi_-FreeBSD-specific wrapper functions to avoid this problem. MFC after: 3 days
* ath12k: import driver from upstreamBjoern A. Zeeb2023-08-2147-0/+54778
| | | | | | | | | | | | | | | | | | | | | | | | | | | Import BSD-3-Clause-Clear ath12k driver based on wireless-testing (wt-2023-05-11) 711dca0ca3d77414f8f346e564e9c8640147f40d (after v6.4-rc1) with further updates based on (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), (wt-2023-08-13) 81e147b1317ee7cde8b624ee8c0501b470d7e91c (after v6.5-rc5). Complement the driver to make compile on FreeBSD using LinuxKPI with changes covered by #ifdef (__FreeBSD__). Add the module build framework but keep disconnected from the build for now. The current driver (or rather LinuxKPI) lacks support for some "qcom" bits needed in order to get things working (as does ath11k). There was interest by various people to enhance support further for ath11k which will equally benefit ath12k. Given the lack of full license texts on the files this is imported under the draft policy for handling SPDX files (D29226) and with approval for BSD-3-Clause-Clear. [1] Approved by: core (jhb, 2023-05-11) [1] MFC after: 20 days
* ath11k: update driver from upstreamBjoern A. Zeeb2023-08-2158-3113/+13484
| | | | | | | | | | This is a set of updates of the ath11k driver based on wireless-testing (wt-2023-05-11) 711dca0ca3d77414f8f346e564e9c8640147f40d (after v6.4-rc1), (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). MFC after: 20 days
* ath10k: update driver from upstreamBjoern A. Zeeb2023-08-2136-498/+609
| | | | | | | | | | This is a set of updates of the ath10k driver based on wireless-testing (wt-2023-05-11) 711dca0ca3d77414f8f346e564e9c8640147f40d (after v6.4-rc1), (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). MFC after: 20 days
* ath1xk_common: update common athk files from upstreamBjoern A. Zeeb2023-08-216-19/+21
| | | | | | | Update ath1xk_common based on wireless-testing (wt-2023-05-11) 711dca0ca3d77414f8f346e564e9c8640147f40d (right after v6.4-rc1). MFC after: 20 days
* ath10k: specifically mark a debug workaround for an early firmware crashBjoern A. Zeeb2023-08-211-0/+9
| | | | | | | | During the last import a (debug) workaround to avoid an early firmware crash was imported. In order to remember and to separate it from upstream sources put it under #ifdef MFC after: 20 days
* ath11k: import ath11k driverBjoern A. Zeeb2023-05-1262-0/+68403
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Import BSD-3-Clause-Clear ath11k driver assumed to be based on Linux kvalo/ath.git master at 6bae9de622d3ef4805aba40e763eb4b0975c4f6d. Complement the driver to make compile on FreeBSD using LinuxKPI with changes covered by #ifdef (__FreeBSD__). Further select updates were applied since the initial import in order to keep compiling along with other LinuxKPI based drivers. Add the module build framework but keep disconnected from the build for now. The current driver (or rather LinuxKPI) lacks support for some "qcom" bits needed in order to get things working. There was interest by various people to enhance support further. We initially only plan to support PCI parts but it would be great to further enhance qcom SoC support to run on several (cheap) APs. The firmware is provided by port net/wifi-firmware-ath11k-kmod. Given the lack of full license texts on most files this is imported under the draft policy for handling SPDX files (D29226) and with approval for BSD-3-Clause-Clear. [1] Approved by: core (jhb, 2023-05-11) [1] MFC after: 2 months
* ath10k: import ath10k driverBjoern A. Zeeb2023-04-2364-0/+87477
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Import ISC-licensed ath10k driver assumed to be based on Linux kvalo/ath.git master at 6bae9de622d3ef4805aba40e763eb4b0975c4f6d. Import support to redirect fwlogs to kernel messages from https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/389075 Complement the driver to make compile on FreeBSD using LinuxKPI with changes covered by #ifdef (__FreeBSD__). Further select updates were applied since the initial import in order to keep compiling along with other LinuxKPI based drivers. Any other native driver using BUS_PROBE_DEFAULT will attach ignoring this one by default given bsd_probe_return is set to a lower priority. Add the module build framework. We only support PCI parts. The firmware is provided by port net/wifi-firmware-ath10k-kmod. Given the lack of full license texts on most files this is imported under the draft policy for handling SPDX files (D29226). [1] Approved by: core (emaste, 2022-04-08) [1] MFC after: 2 months
* athk: import common code for ath1?k driversBjoern A. Zeeb2023-04-2316-0/+4182
Import common ISC-licensed athk parts assumed to be based on Linux kvalo/ath.git master at 6bae9de622d3ef4805aba40e763eb4b0975c4f6d. The only modification should be for FreeBSD module handling in main.c. Add the module build framework unconnected to the build for now. These files will be shared by ath1?k drivers. MFC after: 2 months