The waiting on the device means that your phone is not being located.
Try the following code:
fastboot devices
And check if there are some devices recognized. If not, it probably means that you don't have the correct drivers installed. What O.S. are you using? I guess that Windows. Which version? x86 or x64?
EDIT: Explanation about drivers of Android Phones in Windows. This is a general idea, so some technical mistakes are allowed, but in general, an Android phone, when plugged to the PC, identifies itself as several devices. One is to mount the data (dependeing on the version, it uses MTP, or mount the SDcard), another is the Android Phone to use the adb, and two more are when the phone is connected but in recovery or in bootloader. For each of this "Virtual devices", the O.S. needs a driver, usually a different driver. So you might have the adb drivers installed, but not the fastboot.