This seems to be a fairly chronic problem, as shown by the following questions:
How do I fix a "Wireless is disabled by hardware switch" error?
Wireless disabled by hardware switch
"Wireless disabled by hardware switch" after suspend and other hardware buttons ineffective - how can I solve this?
but no good solutions have been found!
Wireless works fine after a reboot, but after a suspend the hardware switch (for my laptop this is f12) has no effect on the wireless, it is just permanently off, and shows that it is with a red LED. All
My rfkill list all reads:
0: phy0: Wireless LAN
Soft blocked: no
Hard blocked: yes
1: hp-wifi: Wireless LAN
Soft blocked: no
Hard blocked: yes
Any combination with rfkill <un>block wifi doesn't work, although one time first blocking then unblocking actually turned it on again.
sudo lshw -C network reads:
*-network DISABLED
description: Wireless interface
product: AR9285 Wireless Network Adapter (PCI-Express)
vendor: Qualcomm Atheros
physical id: 0
bus info: pci@0000:02:00.0
logical name: wlan0
version: 01
serial: 78:e4:00:65:2e:3f
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=ath9k driverversion=3.11.0-12-generic firmware=N/A ip=155.99.215.79 latency=0 link=yes multicast=yes wireless=IEEE 802.11bgn
resources: irq:17 memory:90100000-9010ffff
*-network DISABLED
description: Ethernet interface
product: RTL8101E/RTL8102E PCI Express Fast Ethernet controller
vendor: Realtek Semiconductor Co., Ltd.
physical id: 0
bus info: pci@0000:03:00.0
logical name: eth0
version: 02
serial: c8:0a:a9:89:b4:30
size: 10Mbit/s
capacity: 100Mbit/s
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress msix vpd bus_master cap_list rom ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=half latency=0 link=no multicast=yes port=MII speed=10Mbit/s
resources: irq:42 ioport:2000(size=256) memory:90010000-90010fff memory:90000000-9000ffff memory:90020000-9002ffff
Also, adding a /etc/pm/sleep.d/brcm.sh file as recommended here simply prevents the laptop from suspending at all, which of course is no good.
This question has an answer urging to install the original driver, but it wasn't an "accepted answer" so I'd rather not take a chance on it. Also I'll admit I'm a bit lost on that and would like help doing so with the specific information I've given.
xev shows that no internal event is triggered for my wireless switch (f12), but other function keys also acting as hardware switches work fine.
I would be happy to provide more information, so long as you're willing to help me find it for you! This is a very annoying bug.
I have a Compaq Presario CQ62.
Edit. I just tried to reload bios defaults (or something) as shown by this video. Didn't work.
Edit. I tried the contents of this answer, and it didn't work.
Edit. I made a pastebin of dmesg. I couldn't even begin to understand the contents.
Edit. Output of lspci | grep Network:
02:00.0 Network controller: Qualcomm Atheros AR9285 Wireless Network Adapter (PCI-Express) (rev 01)