What do you mean when you say "wifi calling was messed up?" Can you be more precise? Also, a very simple thing you can try:
menu > settings > applications > development > make sure "USB debugging" IS checked.
Also, when you say you "set to factory settings", do you mean a reset? If so, don't use the reset selection built into the phone if you are running 2.2 because it's incorrect. There is a link on this site for the correct procedure.
Also, by any chance have you changed your SD card recently?