Dave Heavy Industries Dave Heavy Industries – blog


HTC Desire S Flashing problems… M4G2DE

After a huge amount of effort, lots of "status 1" lots of "can't open /cache/recovery/log " ... I stumbled across this site - http://forum.xda-developers.com/showthread.php?t=1150917

My heart sank. I feared for the worst. I had infact ejected and re-inserted the battery in close succession when it had frozen earlier that day.

I installed the HTC adb and fastboot drivers, android SDK and platform tools, booted the clockworkmod bootloader (yes, was already s-off and gingerbroken), and started throwing some adb commands at it from here - http://forum.xda-developers.com/showpost.php?p=16135893&postcount=27

adb shell cat /sys/devices/platform/msm_sdcc.2/mmc_host/mmc0/mmc0:0001/name

... bugger, he thought.

adb shell  dmesg | grep mmc0

lots of i/o errors, but most importantly...  mmc0: Deferred resume failed

... bugger, bugger, he thought. the phone gods were angry with me.

Just as the xda-developer prophecy fortold, your mmc will stop working if its a M4G2DE and you don't treat the battery nicely.

My next thought was, restore the original boot and recovery and try and plead my case for a warranty... I doubted they'll be kind to me if they saw clockworkmod on boot.

so, I pulled apart the HTC telstra RUU and got the boot.img and recovery.img ready for a fastboot (more drivers required.. agh.) and was presented with

C:\android\tools>fastboot.exe flash boot ..\boot_signed.img
      sending 'boot' (2836 KB)... OKAY [  0.495s]
                writing 'boot'... FAILED (remote: not allowed)

... That's a bit rude, same thing for recovery.img.

As a last stich attempt, I booted back into fastboot, and ran the telstra RUU again. as i couldn't use adb to see the kmsg, I assumed it was going poorly... until... it booted!

failing to believe what I was seeing.... I ran the same command given to me to check the mmc... and..

<3>[    8.589385] mmc0: No card detect facilities available
<6>[    8.590026] mmc0: Qualcomm MSM SDCC at 0x00000000a0500000 irq 98,0 dma 7
<6>[    8.590148] mmc0: Platform slot type: MMC
<6>[    8.590393] mmc0: 4 bit data mode disabled
<6>[    8.590515] mmc0: 8 bit data mode enabled
<6>[    8.590637] mmc0: MMC clock 144000 -> 50000000 Hz, PCLK 96000000 Hz
<6>[    8.590881] mmc0: Slot eject status = 0
<6>[    8.591003] mmc0: Power save feature enable = 1
<6>[    8.591247] mmc0: DM non-cached buffer at ffa0f000, dma_addr 0x0bb01000
<6>[    8.591369] mmc0: DM cmd busaddr 0x0bb01000, cmdptr busaddr 0x0bb01300
<6>[    8.745025] mmc0: new high speed MMC card at address 0001
<6>[    8.746337] mmcblk0: mmc0:0001 M4G2DE 2.10 GiB

SUCCESS! Potentially good news for anyone mid-heart-attack, your phone might not (but still could be) screwed.

I have since re gingerbroken, installed Cyanogen, and am back up and running with a working phone.


Update 20/9 - phone has been operational for about a week now, all is good.

To follow up a few questions - logs did indicate "failed to get card ready" , "deferred resume failed", several DMA errors, several (thousands of lines) of i/o errors. I guess something I've taken from all of this is that its possible that the current tests accepted on XDA to determine a hardware fault are not conclusive. I was ready to prepare my phone for a warranty (if I was lucky) repair, and installing the stock RUU fixed the issue. I have no doubt that there are people with a physically damaged emmc out there, but I was not one of them, and I think that means I'm not alone - so don't give up yet, try and flash the RUU from fastboot.

I was asked on XDA to prepare a filesystem and format it, and confirm there were no errors - there were not.

~ # mke2fs -j /dev/block/mmcblk0p27
mke2fs -j /dev/block/mmcblk0p27
mke2fs 1.40.8 (13-Mar-2008)
/dev/block/mmcblk0p27 is apparently in use by the system; will not make a filesy
stem here!
~ # umount /cache
umount /cache
~ # mke2fs -j /dev/block/mmcblk0p27
mke2fs -j /dev/block/mmcblk0p27
mke2fs 1.40.8 (13-Mar-2008)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
76912 inodes, 307196 blocks
15359 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67633152
38 block groups
8192 blocks per group, 8192 fragments per group
2024 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729, 204801, 221185

Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 35 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

~ # e2fsck /dev/block/mmcblk0p27
e2fsck /dev/block/mmcblk0p27
e2fsck 1.41.6 (30-May-2009)
/dev/block/mmcblk0p27: clean, 11/76912 files, 20003/307196 blocks
~ # e2fsck /dev/block/mmcblk0p27 -f
e2fsck /dev/block/mmcblk0p27 -f
e2fsck 1.41.6 (30-May-2009)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/block/mmcblk0p27: 11/76912 files (0.0% non-contiguous), 20003/307196 blocks

Comments (11) Trackbacks (0)
  1. Please leave a comment if this has helped you – I’m really curious as to if this is actually helping people or not.

  2. I think I am not that lucky than you. Did you flash the RUU with the executable or by flashing the extracted img(s) ? What was between “writing ‘boot’… FAILED (remote: not allowed)” and successfully flashing?

  3. Hey man thanks. I got into this trouble after flashing a new radio. The only thing left was to reflash the hboot and the radio from the fastboot and then I found your guide. Works perfectly. Thank you!

  4. I would like to try my luck again. Please could you post links to download HTC telstra RUU, boot.img and recovery.img, also i will appreciate if you could post a setp by step guide.

  5. dbezzegh – I ran the RUU executable while the phone was in fastboot, no extracting of the rom necessary.

    amidabuddha – glad I can help!

    rakmok – I’ll prepare a step by step this week for you :)

  6. Hi,

    I am getting stuck when I run the RUU at: Rebooting to Bootloader…………
    My phone just freezes and stays like that …

    I run the RUU as I am in Fastboot (Can’t run it from Recovery)

    What RUU you use? Is it RUU_Saga_Telstra_WWE_1.36.841.3_Radio_20.28d.30.0805U_3805.04.02.01_M_release_184558_signed ?

    Any more tips? …

  7. Danny – the only other thing I can think of is that I had to install drivers to get ADB working earlier in the exercise… its possible one of them were necessary to run fastboot.

    without running the RUU, are you able to see “My HTC” in device manager under android usb devices in fast boot? (I can)

    the driver is androidusb.sys and the hardware ids are USB\VID_0BB4&PID_0FF0&REV_0100

  8. I just typed a really long comment, and it was eaten by the captcha decoder… grrrrrr….

    Anyway, here I go again: I had lots of “status 1″ errors and phone wouldn’t go past the white HTC logo. I found this blog. I was about to start looking for RUUs when I did this:

    I turned off the phone again (using the trick of volumeup/volumedown/power buttons together) and quickly removed the battery again.

    I rebooted into Hboot (volumedown/power together). From there, just for the heck of it, I selected the “Factory Reset” option. (I’m on the Hboot installed by the Revolutionary tool http://revolutionary.io/, don’t know if ALL Hboots have this option). I didn’t know if this would be different than the recovery tool wipe, but I thought I’d try.

    After I selected this the phone rebooted and went to recovery. When I tried to reinstall the CM 7.1 ROM zip, which failed previously with status 1, it worked.

    Phone seems fine now. Hope this helps someone.


  9. Just to be clear, the Hboot “Factory Reset” option is what I think cured my problem.

    However, I listed everything I did in case someone else recognizes a step from their own troubleshooting steps.

  10. I’m hoping this method is going to work out for my phone as well. I’ve managed to get to the point where I can do the following:

    C:\android\tools>fastboot.exe flash boot ..\boot_signed.img
    sending ‘boot’ (2836 KB)… OKAY [ 0.495s]
    writing ‘boot’…

    and then my cmd prompt seems to just freeze up and there is no response from my phone. How long did you actually wait? What do I do if it simply stays frozen?


  11. How long did the RUU take? The screen says it will take about 10 minutes… did you take longer than that?

Leave a comment

No trackbacks yet.