How about the info from
inxi -Nixz
and
lsmod
and
mhwd -li
inxi -Nixz
Network:
Card-1: Broadcom Limited BCM4322 802.11a/b/g/n Wireless LAN driver: wl
v: kernel bus ID: 02:00.0
IF: wlp2s0 state: dormant mac: <filter>
Card-2: Broadcom Limited NetXtreme BCM5764M Gigabit Ethernet PCIe
driver: tg3 v: 3.137 port: N/A bus ID: 03:00.0
IF: enp3s0 state: down mac: <filter>
WAN IP: No WAN IP data found. Connected to the web? SSL issues?
inxi -li
Network:
Card-1: Broadcom Limited BCM4322 802.11a/b/g/n Wireless LAN driver: wl
IF: wlp2s0 state: dormant mac: 32:5f:82:70:67:09
Card-2: Broadcom Limited NetXtreme BCM5764M Gigabit Ethernet PCIe
driver: tg3
IF: enp3s0 state: down mac: 10:9a:dd:55:6d:cd
WAN IP: No WAN IP data found. Connected to the web? SSL issues?
Partition:
ID-1: / size: 284.31 GiB used: 5.37 GiB (1.9%) fs: ext4 dev: /dev/dm-0
label: N/A
ID-2: swap-1 size: 7.93 GiB used: 0 KiB (0.0%) fs: swap dev: /dev/dm-1
label: N/A
There's a mountain of output from lsmod. Is there a relevant part of the output I should be looking for? Should I just paste the raw text here, or is there a nice way to post it here without it looking like a short novel on the page?
Its hard to know which module that might be getting in the way could be loaded .. so its kinda just skimming the whole thing. You can use pastebin or similar to hold it if its long.
BTW I accidentally typed inxi in the last command which is not what I meant. It shouldve been mhwd. Please edit your post after I edit mine above.
Righto. Also the Wi-Fi networks now appear, but when I try to join, Network Manager attempts to join the network, then disconnects from it. Here's the output you requested:
lsmod
Module Size Used by
wl 6463488 0
cfg80211 733184 1 wl
rfcomm 86016 16
fuse 118784 2
bnep 24576 2
nouveau 1929216 2
nls_iso8859_1 16384 1
nls_cp437 20480 1
vfat 20480 1
fat 81920 1 vfat
mxm_wmi 16384 1 nouveau
wmi 28672 2 mxm_wmi,nouveau
i2c_algo_bit 16384 1 nouveau
ttm 114688 1 nouveau
drm_kms_helper 196608 1 nouveau
drm 434176 5 drm_kms_helper,ttm,nouveau
agpgart 49152 3 ttm,nouveau,drm
syscopyarea 16384 1 drm_kms_helper
tg3 184320 0
sysfillrect 16384 1 drm_kms_helper
sysimgblt 16384 1 drm_kms_helper
fb_sys_fops 16384 1 drm_kms_helper
coretemp 16384 0
kvm_intel 225280 0
snd_hda_codec_hdmi 57344 3
joydev 24576 0
kvm 708608 1 kvm_intel
mousedev 24576 0
btusb 53248 0
ptp 20480 1 tg3
pps_core 20480 1 ptp
uvcvideo 102400 0
libphy 69632 1 tg3
applesmc 24576 0
irqbypass 16384 1 kvm
videobuf2_vmalloc 16384 1 uvcvideo
videobuf2_memops 16384 1 videobuf2_vmalloc
input_polldev 16384 1 applesmc
videobuf2_v4l2 28672 1 uvcvideo
btrtl 16384 1 btusb
videobuf2_core 45056 2 videobuf2_v4l2,uvcvideo
snd_hda_codec_cirrus 24576 1
btbcm 16384 1 btusb
snd_hda_codec_generic 86016 1 snd_hda_codec_cirrus
btintel 16384 1 btusb
pcspkr 16384 0
videodev 204800 3 videobuf2_core,videobuf2_v4l2,uvcvideo
bluetooth 630784 37 btrtl,btintel,btbcm,bnep,btusb,rfcomm
shpchp 40960 0
media 45056 2 videodev,uvcvideo
input_leds 16384 0
ecdh_generic 24576 1 bluetooth
led_class 16384 3 input_leds,applesmc,nouveau
hid_generic 16384 0
rfkill 28672 6 bluetooth,cfg80211
evdev 20480 14
bcm5974 20480 0
mac_hid 16384 0
acpi_als 16384 0
snd_hda_intel 45056 3
kfifo_buf 16384 1 acpi_als
snd_hda_codec 151552 4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_cirrus
snd_hda_core 90112 5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_cirrus
industrialio 81920 2 acpi_als,kfifo_buf
snd_hwdep 16384 1 snd_hda_codec
snd_pcm 118784 4 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_core
apple_bl 16384 0
snd_timer 36864 1 snd_pcm
snd 90112 14 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_timer,snd_hda_codec_cirrus,snd_pcm
soundcore 16384 1 snd
sbs 20480 0
button 16384 1 nouveau
video 45056 1 nouveau
sbshc 16384 1 sbs
ac 16384 0
acpi_cpufreq 24576 1
sch_fq_codel 20480 3
uinput 20480 0
crypto_user 16384 0
ip_tables 28672 0
x_tables 45056 1 ip_tables
ext4 716800 1
crc32c_generic 16384 2
crc16 16384 2 bluetooth,ext4
mbcache 16384 1 ext4
jbd2 118784 1 ext4
fscrypto 32768 1 ext4
crypto_simd 16384 0
glue_helper 16384 0
cryptd 28672 1 crypto_simd
aes_x86_64 20480 4
xts 16384 2
algif_skcipher 16384 0
af_alg 28672 1 algif_skcipher
hid_appleir 16384 0
hid_apple 16384 0
usbhid 57344 0
hid 131072 4 usbhid,hid_apple,hid_generic,hid_appleir
dm_crypt 40960 2
dm_mod 143360 5 dm_crypt
uas 28672 0
usb_storage 73728 1 uas
sd_mod 61440 4
sr_mod 28672 0
cdrom 69632 1 sr_mod
ohci_pci 16384 0
ahci 40960 3
libahci 40960 1 ahci
libata 278528 2 libahci,ahci
firewire_ohci 45056 0
firewire_core 81920 1 firewire_ohci
crc_itu_t 16384 1 firewire_core
ehci_pci 16384 0
ohci_hcd 57344 1 ohci_pci
ehci_hcd 94208 1 ehci_pci
scsi_mod 212992 5 sd_mod,usb_storage,uas,libata,sr_mod
usbcore 286720 10 ohci_hcd,ehci_pci,usbhid,bcm5974,usb_storage,uvcvideo,ehci_hcd,btusb,ohci_pci,uas
usb_common 16384 1 usbcore
mhwd -li
>Installed PCI configs:
----------------------------------------------------------------------------------------------------------
NAME VERSION FREEDRIVER TYPE
----------------------------------------------------------------------------------------------------------
network-broadcom-wl 2015.12.13 true PCI
video-linux 2018.05.04 true PCI
Warning: No installed USB configs!
Hope you don't mind me jumping in @cscs
Try this to change the state from dormant.
sudo ip link set wlan0 mode default
It probably wont work because we don't know the proper ID of the adapter, but its worth a try.
Then Lets try again with proper name:
sudo ip link set wlp2s0 up
sudo systemctl stop NetworkManager; sleep 5; sudo systemctl start NetworkManager
@tbg, you were right, that command returned Cannot find device "wlan0"
. Thank you for jumping in. And thank you @cscs! After running the above lines, there was no immediate effect. I suspended and unsuspended, and suddenly I was able to connect to my home Wi-Fi (I'm typing this from the computer in question).
The only issue is that when I rebooted to check if this fix persisted, I had the same issue as before, so I reran the commands you sent me. Only after suspending and unsuspending was I actually able to connect to the network. Is there a way to remedy this?
Try combinig commands:
sudo ip link set wlp2s0 mode default; sudo ip link set wlp2s0 up; sudo systemctl stop NetworkManager; sleep 5; sudo systemctl start NetworkManager
just use
systemctl restart NetworkManager
?
I think the card is still dormant. That is why it is only initialized after coming out of suspend.
If that is not a perfect solution for you then try disabling power saving on your card. This command does not work with all adapters, the card must support this:
sudo iw dev wlp2s0 set power_save off
The reason I often add the sleep command between stop/restart is that on some systems a restart command fails. The network manager sometimes fails to restart if the states are cycled to quickly. That is why I often use the long awkward command, or I will simply issue separate start and stop commands for network manager.
Thanks for sticking with me, y'all. I tried the above, but didn't notice any difference, even after rebooting.
Based on this hunch, I checked the network card with inxi -Fxz
, and sure enough prior to suspending, its state was "dormant"; after coming out of suspend, its state was "up".
I rebooted and ransudo ip link set wlp2s0 mode default; sudo ip link set wlp2s0 up; sudo systemctl stop NetworkManager; sleep 5; sudo systemctl start NetworkManager
again, checking the state of the card before and after. For some reason, in both cases, the card is dormant.
Your issue is very unusual. The opposite happens far more often where wifi doesn't work after resume. I will do some searching to see if I can find a solution for you.
Really longshot is blacklisting wmi
Also could try disabling TLP to rule that out.
@cscs @tbg, tried blacklisting wmi and disabling TLP, but to no avail. Regardless, I can consistently get the Wi-Fi working now, which is a vast improvement. If I figure this issue out, I'll update here. Thanks again to both of you for all your help, and if you do come across something, let me know.
sudo iw dev wlp2s0 set power_save off
Tried
sudo iw dev wlp2s0 set power_save off
Still the same issue upon restarting.
This is a very hard issue to find information about as this is quite rare. I will keep searching for an answer.
No worries, I totally understand. I originally posted because none of the things other people posted about worked for me. Thank you for your continued efforts. I'll try out whatever you send and just give you feedback on whether it worked or not.
Just to let you know I found several posts on the Arch Linux forum that related the network adapter being in a dormant state to the dhcp server on the router. The posts seemed to indicate that if the router wasn't serving dhcp addresses properly the adapter would go dormant. Make sure dhcp is enabled in your router, and that that it is set to "auto".
Also, double check this:
Right click on the nm-applet icon in your panel and select Edit Connections and open the Wireless tab
Select the connection you want to work with and click the Edit button
Check the boxes “Connect Automatically” and “Available to all users”
Set “Store password for all users (not encrypted)” in the Wi-Fi Security tab. This is a bit of a security risk, but try this setting to see if it makes any difference.
I also just noticed that in all your outputs you never included any kernel information. You should test other kernel versions for proper operation. Test at least kernels 4.14, 4.17, and 4.18 to see if those improve anything.
If it's not too much trouble could you please post the output of "dmesg" after startup. Then post the output of "dmesg" after suspend/resume with your wifi working.
This fix force loads a module at boot and may potentially fix your issue. I don't use this route very often, but sometimes it corrects a stubborn driver that won't load at boot.
Create the configuration file "/etc/modules-load.d/wl.conf"
Add the following entry to "wl.conf"
wl