wifi: morsemicro: MM81X should be invisible and selected by its usersMorse Micro MM81x wireless devices can have either SDIO or USBinterfaces. Hence there is no point in asking the user about the
wifi: morsemicro: MM81X should be invisible and selected by its usersMorse Micro MM81x wireless devices can have either SDIO or USBinterfaces. Hence there is no point in asking the user about thesedevices when configuring a kernel without MMC or USB support.Fix this by making the core driver symbol invisible, and selecting it byits users when needed.Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>Link: https://patch.msgid.link/3415bda97c2faf7c56eff7fe79a91b218d0d6731.1786010705.git.geert+renesas@glider.beSigned-off-by: Johannes Berg <johannes.berg@intel.com>
show more ...
wifi: mm81x: prevent timers from outliving teardownThe three timer teardown paths call timer_delete_sync_try() and ignoreits return value. If a callback is running on another CPU it returns -1wit
wifi: mm81x: prevent timers from outliving teardownThe three timer teardown paths call timer_delete_sync_try() and ignoreits return value. If a callback is running on another CPU it returns -1without waiting, and it does not prevent a later rearm even when it doesdeactivate a pending timer. mm81x_skbq_tx_complete() can rearm thestale-status timer, and the rc and yaps callbacks queue work that rearmstheir timers. Teardown can therefore continue with a callback stillrunning or the timer rearmed, so it fires after the associated state hasbeen freed.Use timer_shutdown_sync() for these permanent teardowns: it waits for anin-flight callback and prevents any future rearm. In mm81x_rc_deinit()shut the timer down before cancel_work_sync() so the work can no longerrecreate the timer/work cycle.Fixes: b1906cea00b0 ("wifi: mm81x: add mm81x Wi-Fi HaLow driver")Signed-off-by: Linmao Li <lilinmao@kylinos.cn>Reviewed-by: Dan Callaghan <dan.callaghan@morsemicro.com>Link: https://patch.msgid.link/20260723113927.2370301-1-lilinmao@kylinos.cnSigned-off-by: Lachlan Hodges <lachlan.hodges@morsemicro.com>
wifi: mm81x: add mm81x Wi-Fi HaLow drivermm81x is the first Wi-Fi HaLow driver to support the Morse Micro mm81xchip family via USB and SDIO.S1G support in the kernel is only new, and as a result
wifi: mm81x: add mm81x Wi-Fi HaLow drivermm81x is the first Wi-Fi HaLow driver to support the Morse Micro mm81xchip family via USB and SDIO.S1G support in the kernel is only new, and as a result this driver hasbeen scoped to be simple and only support station and AP interface.The Wi-Fi specific features only cover the minimum required for basicuse such as powersave, aggregation, rate control and so on. The driverwill be extended into the future as S1G support for operations such asACS, channel switching and so on are added into the wireless stack.The driver has been build tested on a long list of architectures andcompilers via Intels LKP.The driver currently supports IEEE80211-2024 US channels only, withAU 2020 also available. In order for this to be expanded additionalnon-trivial kernel work is required which will begin once thedriver is upstream.The driver has had many authors who are listed below inalphabetical order:Co-developed-by: Andrew Pope <andrew.pope@morsemicro.com>Signed-off-by: Andrew Pope <andrew.pope@morsemicro.com>Co-developed-by: Arien Judge <arien.judge@morsemicro.com>Signed-off-by: Arien Judge <arien.judge@morsemicro.com>Co-developed-by: Ayman Grais <ayman.grais@morsemicro.com>Signed-off-by: Ayman Grais <ayman.grais@morsemicro.com>Co-developed-by: Bassem Dawood <bassem@morsemicro.com>Signed-off-by: Bassem Dawood <bassem@morsemicro.com>Co-developed-by: Chetan Mistry <chetan.mistry@morsemicro.com>Signed-off-by: Chetan Mistry <chetan.mistry@morsemicro.com>Co-developed-by: Dan Callaghan <dan.callaghan@morsemicro.com>Signed-off-by: Dan Callaghan <dan.callaghan@morsemicro.com>Co-developed-by: James Herbert <james.herbert@morsemicro.com>Signed-off-by: James Herbert <james.herbert@morsemicro.com>Co-developed-by: Sahand Maleki <sahand.maleki@morsemicro.com>Signed-off-by: Sahand Maleki <sahand.maleki@morsemicro.com>Co-developed-by: Simon Wadsworth <simon@morsemicro.com>Signed-off-by: Simon Wadsworth <simon@morsemicro.com>Signed-off-by: Lachlan Hodges <lachlan.hodges@morsemicro.com>