Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 18 Apr 2024 00:41:57 +0000 (UTC)
From:      "Bjoern A. Zeeb" <bz@FreeBSD.org>
To:        FreeBSD wireless mailing list <wireless@freebsd.org>
Subject:   Re: Update of github "bz_wifi_drv_update" branch (all drivers updated to Linux v6.8)
Message-ID:  <6rn8o278-6063-8q65-5s07-8603ss14r6r0@SerrOFQ.bet>
In-Reply-To: <p197r6so-5q67-97n0-7np3-r3855o627sqq@SerrOFQ.bet>
References:  <p197r6so-5q67-97n0-7np3-r3855o627sqq@SerrOFQ.bet>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 17 Apr 2024, Bjoern A. Zeeb wrote:

> Hi,
>
> I updated "main" and the "bz_wifi_drv_update" [1] branch on github.
> The "bz_wifi_drv_update" branch got a forced push in case you are
> tracking it.
>
> It now includes all drivers updated to Linux v6.8 and all but mt76
> connected to the build (but no new ones working).
>
> In case you want to test an updated iwlwifi (incl. d3 compilable),
> rtw88, rtw89, or ath10k please do and let us know.  It would help a lot
> for merging it into the tree.
>
> If you want to contribute to missing bits ofr ath11k/12k please also let
> us know and I can probably guide you.
>
> For mt76 I'll go and see if we can get the missing bits sorted to also
> enable that and then make progress.
>
> I've also added some local changes to make debugging available based on
> the IEEE80211_DEBUG and also adding drivers and debugging on arm64.
>
> Here's the list of (condensed) changes:
>
> 36ad7bbcd67c LOCAL modules: enable rtw89 and ath1[012]k, add iwn and iwm to 
> arm64 too
> 18f39651698f LOCAL: turn on IEEE80211 debugging on arm64 too.
> 6e79d4d3fb09 ath12k: update driver based on Linux 6.8
> d2c3a986395a ath11k: update driver based on Linux 6.8
> cd20ebab2d49 ath10k: update driver based on Linux 6.8
> 3cae2453d5f8 ath1xk_common: update based on Linux 6.8
> e61dc03f0a64 mt76: import driver based on Linux 6.8
> 858b062f11aa rtw89: import driver based on Linux 6.8
> fd90bf90e67c rtw88: import driver based on Linux 6.8
> 11e58a0360f9 iwlwifi: disable request_module() for iwlmvm
> 0a60bcf1f462 iwlwifi: update firmware
> ccca926e9d76 iwlwifi: reduce diff to upstream
> fd1d7a4a515a iwlwifi: import driver based on Linux 6.8
> 25ac690f0c7a LinuxKPI: Add work-in-pgroess PAGE_IS_LKPI_PAGE
> 4a7496b6d63c LinuxKPI: 802.11 compile in debugging based on IEEE80211 
> debugging
> b27fd810a0a3 LinuxKPI: 802.11 support and iwlwifi:  make d3 compile
> ee80bb7119c0 LinuxKPI: pm: add SET_SYSTEM_SLEEP_PM_OPS() and 
> device_can_wakeup()
> b02008a2d33d LinuxKPI: 802.11: update compat code for Linux 6.8 upstream

I've also just now pushed:
74eaf4f478ec iwlwifi: enable CONFIG_PM and CONFIG_PM_SLEEP incl. d3.c

which will make d3.c compile in for testing.  That change was lost in a
rebase cleanup for the other changes.

It will need further work as there's not only the classic suspend/resume
path from the device driver in there but also the "WoWLan" suspend/resume
path from the mac80211 level, which, at least for iwlwifi does the
actual PCIe transition if I read the code correctly.  FreeBSD has no
notion of the latter (yet) as we would normally call
ieee80211_suspend_all()/ieee80211_resume_all() from the device driver
handler directly using our internal notion of the wireless device softc
(ic) but even that will only stop/start things and not leave us with the
actual call into D3 for LinuxKPI based drivers.  In other words to my
best knowledge nothing in FreeBSD supports WoWLan just yet and it is
just another one thing that somehow needs to be prepared for.

I'll look into at least the suspend/resume paths the next days and
hopefully will find a way to hook it up to net80211 and LinuxKPI.


> Lots of health,
> Bjoern
>
>
> [1] https://github.com/freebsd/wireless/tree/bz_wifi_drv_update
>
>

-- 
Bjoern A. Zeeb                                                     r15:7



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6rn8o278-6063-8q65-5s07-8603ss14r6r0>