Simply using rfkill might not have the desired effect. But I've found recommendations what else can be done -- http://superuser.com/a/698649/65570 :
1) First, do rmmod -f ath5k, and then rfkill unblock all;
2) Use the special parameter of ath5k module to ignore the hardware block (because the WiFi-device might receive wrong signals from the button, for example, if the firmware doesn't correspod to way it has been connected, and so on).
3) Suppress the loading of hp-wmi (BTW, what's the purpose of this module? modinfo says: HP laptop WMI hotkeys driver; "The entry for hp-wifi is for the software that monitors the switch."):
** "Workaround #2: Add hp-wmi to modprobe blacklist. Again, this causes only phy0 wireless to be reported and phy0 always accurately reflects the state of the hardware (both soft and hard blocked)."
** "Instead of removing my ath9k and adding it back, I simply removed the hp-wifi module like so. rmmod hp-wmi (do this, this removes the hp-wifi module which you don't need now )"