Running Arch linux on my little HP Pavilion DM1 netbook with an Alfa rtl8187 1000mW external wifi card has a few problems with suspend.
For starters, the driver (module) needs to be reinitialised upon return. This can be done by rmmod/modprobe, but easiest is to add a line to /etc/pm/config.d/modules to unload the module before suspend, as per https://wiki.archlinux.org/index.php/Pm-utils#Advanced_Configuration in the form of a line of config:
Once back up, sometimes “wifi-menu” will report “no networks found”. This is strange because
correctly reports a whole bunch of networks. One reason could be that wpa_supplicant is thinking it’s already running, as can be verified by
which gives a nice verbose error message that the interface exists and seems to be in use, when clearly the lack of a connection shows it’s not. You will want to replace rtl8187 and wlan0 with your driver and interfaces respectively. Removing the lockfile with