Article 54E1X It is impossible to hardware reset wifi adapter without reboot

It is impossible to hardware reset wifi adapter without reboot

by
naikin
from LinuxQuestions.org on (#54E1X)
Sometimes my wifi adapter enters an error state and after hours of searching, I have not found a way to hardware reset it without rebooting.

When I say error state, I mean that the hardware is not at all responding, so tricks such as restarting the networkmanager or bringing down the wlan0 peripheral using ip link are completely useless. Sometimes, reloading the driver works

Code:sudo modprobe -r brcmfmac && sudo modprobe brcmfmacHowever, this sometimes fails, the wifi device stops appearing in the output of ifconfig and no wifi networks are visible.

The output of dmesg is

Code:[161668.714290] debugfs: File 'le_min_key_size' in directory 'hci0' already present!
[161668.714292] debugfs: File 'le_max_key_size' in directory 'hci0' already present!
[161680.670394] usbcore: deregistering interface driver brcmfmac
[161680.721685] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[161680.721978] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[161680.727730] usbcore: registered new interface driver brcmfmac
[161680.832509] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43602-pcie for chip BCM43602/1
[161680.832860] brcmfmac 0000:02:00.0: Direct firmware load for brcm/brcmfmac43602-pcie.Dell Inc.-XPS 15 9550.txt failed with error -2
[161680.832867] brcmfmac 0000:02:00.0: Direct firmware load for brcm/brcmfmac43602-pcie.txt failed with error -2
[161681.335921] swiotlb_tbl_map_single: 3 callbacks suppressed
[161681.335923] brcmfmac 0000:02:00.0: swiotlb buffer is full (sz: 2048 bytes), total 32768 (slots), used 32768 (slots)
[161681.335927] brcmfmac: brcmf_msgbuf_alloc_pktid: dma_map_single failed !!
[161681.335929] ieee80211 phy0: brcmf_msgbuf_rxbuf_data_post: No PKTID available !!
[161681.335930] brcmfmac 0000:02:00.0: swiotlb buffer is full (sz: 2048 bytes), total 32768 (slots), used 32768 (slots)
[161681.335932] brcmfmac: brcmf_msgbuf_alloc_pktid: dma_map_single failed !!
[161681.335933] ieee80211 phy0: brcmf_msgbuf_rxbuf_data_post: No PKTID available !!
[161681.347185] brcmfmac 0000:02:00.0: swiotlb buffer is full (sz: 2048 bytes), total 32768 (slots), used 32768 (slots)
[161681.347189] brcmfmac: brcmf_msgbuf_alloc_pktid: dma_map_single failed !!
[161681.347191] ieee80211 phy0: brcmf_msgbuf_rxbuf_data_post: No PKTID available !!
[161681.359179] brcmfmac 0000:02:00.0: swiotlb buffer is full (sz: 2048 bytes), total 32768 (slots), used 32768 (slots)
[161681.359184] brcmfmac: brcmf_msgbuf_alloc_pktid: dma_map_single failed !!
[161681.359187] ieee80211 phy0: brcmf_msgbuf_rxbuf_data_post: No PKTID available !!
[161681.372162] brcmfmac 0000:02:00.0: swiotlb buffer is full (sz: 2048 bytes), total 32768 (slots), used 32768 (slots)
[161681.372167] brcmfmac: brcmf_msgbuf_alloc_pktid: dma_map_single failed !!
[161681.372169] ieee80211 phy0: brcmf_msgbuf_rxbuf_data_post: No PKTID available !!
[161681.384077] brcmfmac 0000:02:00.0: swiotlb buffer is full (sz: 2048 bytes), total 32768 (slots), used 32768 (slots)
[161681.384080] brcmfmac: brcmf_msgbuf_alloc_pktid: dma_map_single failed !!
[161681.384081] ieee80211 phy0: brcmf_msgbuf_rxbuf_data_post: No PKTID available !!
[161681.397171] brcmfmac 0000:02:00.0: swiotlb buffer is full (sz: 2048 bytes), total 32768 (slots), used 32768 (slots)
[161681.397193] brcmfmac: brcmf_msgbuf_alloc_pktid: dma_map_single failed !!
[161681.397194] ieee80211 phy0: brcmf_msgbuf_rxbuf_data_post: No PKTID available !!
[161681.409185] brcmfmac 0000:02:00.0: swiotlb buffer is full (sz: 2048 bytes), total 32768 (slots), used 32768 (slots)
[161681.409187] brcmfmac: brcmf_msgbuf_alloc_pktid: dma_map_single failed !!
[161681.409189] ieee80211 phy0: brcmf_msgbuf_rxbuf_data_post: No PKTID available !!
[161681.421021] brcmfmac 0000:02:00.0: swiotlb buffer is full (sz: 2048 bytes), total 32768 (slots), used 32768 (slots)
[161681.421029] brcmfmac: brcmf_msgbuf_alloc_pktid: dma_map_single failed !!
[161681.421031] ieee80211 phy0: brcmf_msgbuf_rxbuf_data_post: No PKTID available !!
[161681.433192] brcmfmac 0000:02:00.0: swiotlb buffer is full (sz: 2048 bytes), total 32768 (slots), used 32768 (slots)
[161681.433195] brcmfmac: brcmf_msgbuf_alloc_pktid: dma_map_single failed !!
[161681.433197] ieee80211 phy0: brcmf_msgbuf_rxbuf_data_post: No PKTID available !!
[161681.445191] brcmfmac: brcmf_msgbuf_alloc_pktid: dma_map_single failed !!
[161681.445193] ieee80211 phy0: brcmf_msgbuf_rxbuf_data_post: No PKTID available !!
[161681.457188] brcmfmac: brcmf_msgbuf_alloc_pktid: dma_map_single failed !!
[161681.457190] ieee80211 phy0: brcmf_msgbuf_rxbuf_ctrl_post: No PKTID available !!
[161681.457192] brcmfmac: brcmf_msgbuf_alloc_pktid: dma_map_single failed !!
[161681.457193] ieee80211 phy0: brcmf_msgbuf_rxbuf_ctrl_post: No PKTID available !!
[161681.457981] ieee80211 phy0: brcmf_msgbuf_process_gen_status: Firmware reported general error: 9
[161683.504174] ieee80211 phy0: brcmf_msgbuf_query_dcmd: Timeout on response for query command
[161683.504177] ieee80211 phy0: brcmf_c_preinit_dcmds: Retrieving cur_etheraddr failed, -5
[161683.504178] ieee80211 phy0: brcmf_bus_started: failed: -5
[161683.504202] ieee80211 phy0: brcmf_attach: dongle is not responding: err=-5Looks like the device is in an error state. Is anyone aware of a way I can power it down and back up or send some code that will make it hardware reset, without rebooting my laptop?

OS: Slackware current
WIFI adapter:
Code: $ lspci | grep -i 802
02:00.0 Network controller: Broadcom Inc. and subsidiaries BCM43602 802.11ac Wireless LAN SoC (rev 01)Laptop: Dell XPS15 9550latest?d=yIl2AUoC8zA latest?i=NDxhjP7UKYE:gHabQL-8dlc:F7zBnMy latest?i=NDxhjP7UKYE:gHabQL-8dlc:V_sGLiP latest?d=qj6IDK7rITs latest?i=NDxhjP7UKYE:gHabQL-8dlc:gIN9vFwNDxhjP7UKYE
External Content
Source RSS or Atom Feed
Feed Location https://feeds.feedburner.com/linuxquestions/latest
Feed Title LinuxQuestions.org
Feed Link https://www.linuxquestions.org/questions/
Reply 0 comments