Stupid amounts of props go to IEF and adam235 at MoDaCo and kubino here. Thanks to all of you, so much.
below is the post, as this was a combined effort, we don't need to link to modaco.....
As most of you know, people have been hard at work to fix the USB issues we've been seeing due to recovery setting us into USB debugmode.
After unsuccessful attempts to change the kernel commandline , eg. to:
we've been successful in discovering (with the help of XDA-developers) that these switches are stored in the first NAND partition, mtd0, or 'misc'.
You must be rooted to try the following, it seems you can't write to mtd0 without root.
Do step 1 again if you have to.
Also, SD card functionality has to work. For this, do 'fastboot oem enableqxdm 0' in fastboot mode.
1. Find out your CID. Go into fastboot mode, and do 'fastboot oem boot'.
The log will say something like the following:
#INFOTAG:smi ok, size = 0
#INFOTAG:hero panel = 0x0
#INFOTAG:engineerid = 0x0
#INFOTAG:mono-die = 0x0
#INFODevice CID is not super CID
#INFOCID is HTC__E11
In this specific case, the CID is HTC__E11.
2. Get the following mtd0.img from the attached files below
Edit this image to the CID you found above with a hex editor.
Optionally, you can use this CID generator by stevebrush instead. Untested by me, but it should work properly.
//Edit: Updated link location for stevebrush. Thanks a ton for the generator!
3. Get flash_image from the attached files below
Move this to /data/ , and flash the modified image using:
"/data/flash_image misc /data/mtd0.img"
You can move both mtd0.img and flash_image by putting it on your sdcard, and issueing the following command in a terminal emulator:
'cat /sdcard/flash_image > /data/flash_image'
'cat /sdcard/mtd0.img > /data/mtd0.img'
You might have to do 'chmod u+x /data/flash_image' before you run the commands (or chmod 755 /data/flash_image)
4. Repeat step 3 a couple of times if it doesn't seem to work well.
5. All done! Reboot, you should have normal usb connectivity. Post your 'fastboot oem boot' log and intermediate steps if it fails.
-kubino @ XDA for providing us with the 'misc' information
-TheProfessor @ irc.freenode.net #modaco for being the first test subject + debugging
-adam235 @ irc.freenode.net #modaco for being a test subject as well + debugging
-SgtDavePwnage @ irc.freenode.net #modaco -> moral support + debugging
-DrMon @ irc.freenode.net #modaco -> being brave enough to test on his non-bricked device!