My problem is that after installing Ubuntu 12.04 on my laptop, suspend did not work. Through this training, i solved the suspend problem. But after resume from suspend my USB ports become unavailable.
I had a similar problem. And after a week of searching, I discovered what the problem was for me. In the Ubuntu kernel, the usb drivers are built-in. Therefore, upon suspend and resume, the drivers could not be unloaded and then reloaded as modules. So what I had to do was compile the linux kernel from source and made sure that the usb drivers(xhci_hcd, ehci_hcd) were made to be loadable modules.
From there, I created a file name 20_custom-ehci_hcd in /etc/pm/sleep.d/.
I hope this works for you. I might have made another file somewhere, but I can't find it right now.
EDIT: I found that other file. In /etc/pm/config.d/, I created a file called modules.
There is a simpler solution than rebuilding the kernel at http://ubuntuforums.org/showthread.php?t=1460790 I only needed the unbind/bind on my Asus N53SV
Thanks that helped.
For me, I had to a) unbind the usb devices, and b) manually off the wifi.
In case somebody finds it useful, here is a):
root@tosh:~# cat /etc/pm/sleep.d/20_usb_suspend_fix
root@tosh# cat /etc/pm/sleep.d/30_wifi_off
finally - sys info..