[HTC Desire S] opumps:
hi guys, this problem was solved, unexpectedly.

after read guhl99's post in Thread: PSA: Rooting methods and recently discovered dangersthread,

i finally confirm that my htc DS was bricked by an accidentally freeze and the immediately battery pulled-out-&-pushed-in unstably.

the eMMC-chip(marked as SAMSUNG104, KLM4G2DEJE A001, FDAE15PC) was completely dead,

i made a replacement with a new one(made by Sandisk serial:SEM04G), and then everything goes on good.

View attachment 644685 View attachment 644686

"Thanks to" the design of the battery compartment door, the battery pullout-pushin becomes running-risks.

Make sure there's NOT any tiny battery move when you flipping the compartment door from the side.

Make sure disconnect the battery and DS itself quickly & stably as soon as you could.

Make sure there's at least 10 seconds between battery pullout and pushin.

"How can I be sure if it's a hw problem? I mean, it looks like one, but I would like to be sure..."

please check #27 http://xdaforums.com/showpost.php?p=16135893&postcount=27

A eMMC design flaw, Confirming info from htc-offical (thanks apairofscissors)

http://xdaforums.com/showpost.php?p=20163494&postcount=23

=============Debug Procedure=============

Here are 3 parts in this post.

Actually, it's not that long,

and the most important info is in 8. [ adb shell ]

================Background================

SAGA PVT SHIP S-OFF RL

HBOOT-0.98.00RADIO-38.03.02.15_M

eMMC-boot

Mar 10 2001,14:58:38

ClockworkMod Recovery 3.2.0.0

a busybox within

================what happend================

while installing some apps from the market, DS was stuck at a app called "push ups".

i pulled out battery and reboot, and there came loopboot.

got in Recovery, it promts

E:Can't open /cache/recovery/log
E:Can't open /cache/recovery/log
E:Can't open /cache/recovery/last_log
E:Can't open /cache/recovery/last_log

================things i did================

1. [ wipe data/factory reset]

Formating /data...
black splash screen, and then
E:Can't open /cache/recovery/command
E:Can't open /cache/recovery/log
E:Can't open /cache/recovery/last_log

[ wipe cache ]

Formating /cache...
Cache wipe complete.
E:Can't open /cache/recovery/log
E:Can't open /cache/recovery/last_log

2. [ install zip from sdcard ]

-Checking Model ID
-success!
-Model ID - HTC sage
Now flashing
E:Error in /sdcard/*******.zip
(Status 1)
Installation aborted.

3. [ backup and restore ]

Checking MD5 sums...
Erasing boot before restore...
Restoring boot image...
Restoreing system....
Error while formatting /system!
E:Can't open /cache/recovery/log
E:Can't open /cache/recovery/last_log

4. [ RUU+Goldencard ]

Goldencard is good, in FASTBOOT USB mod,

passed the (version) checking, updating 1.28.401.1 to 1.47.950.3, but stuck at

rebooting bootloader ......
upgrading ROM image in your Android Phone...
Please do NOT disconnect USB cable nor run any program.

5. [ ROM.zip->PG88IMG.zip ]

ROM.zip was picked-up from RUU, renamed to PG88IMG.zip, copied to sdcard,

reboot to HBOOT, and it unzip the pack normally, then stuck at updating screen, more than 1 hour.

HBOOT
[INDENT]Parsing...[SD ZIP]
[1] BOOTLOADER -updating
[2] BOOT
[3] RECOVERY
[4] SYSTEM
[5] SLPASH1
[6] USERDATA
[7] TP
[8] DADIO_V2
[9] RADIO_CUST
Do you want to start update?
[/INDENT]

6. [ PG88IMG.zip for Recovery/Radio ]

HBOOT asks do you wanna upgrade, click VOL-up, then stuck at updating screen

HBOOT
[INDENT]Parsing...[SD ZIP]
[1] RECOVERY -updating
*********
Updating is in progress...
Do not power off the device!
[/INDENT]

7. [ fastboot ]

SH********8 Connected.
STARTING PRINT OF DEVICE INFO.
-----------------------------------.
Radio version: 38.03.02.15_m.
SPL/hboot version: 0.98.0000.
product: saga.
mid: pg88*****.
security: off.
build-mode: ship.
-----------------------------------.
Print of device info SUCCESSFUL.

[B]fastboot erase cache[/B]
erasing 'cache'...
[COLOR=red]erasing 'cache'... FAILED (command write failed (Unknown error))[/COLOR]

8. [ adb shell ]

DS has 2 storages:

eMMC-chip inside, /system /data /cache are mounted to mmcblk0p25, mmcblk0p26, mmcblk0p27;

SDCard removable /sdcard is mounted to mmcblk1p1.

i connect the my phone(DS-brick) through adb-shell, and compared with my friend's (DS-good), here are the prompts:

DS-good shows

mount
rootfs on / type rootfs (rw)
tmpfs on /dev type tmpfs (rw,relatime,mode=755)
devpts on /dev/pts type devpts (rw,relatime,mode=600)
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
/dev/block/[COLOR=blue]mmcblk0p25 on /system type ext3 [/COLOR](rw,relatime,errors=continue,barrier=0,data=writeback)
/dev/block/[COLOR=blue]mmcblk0p26 on /data type ext3[/COLOR] (rw,relatime,errors=continue,barrier=0,
data=writeback)
/dev/block/[COLOR=blue]mmcblk0p27 on /cache type ext3 [/COLOR](rw,nodev,noatime,nodiratime,errors=co
ntinue,barrier=0,data=writeback)
/dev/block/[COLOR=blue]mmcblk1p1 on /sdcard type vfat[/COLOR] (rw,relatime,fmask=0000,dmask=0000,all
ow_utime=0022,codepage=cp437,iocharset=iso8859-1,shortname=mixed,errors=remount-
ro)

DS-brick shows

/dev/block/[COLOR=blue][COLOR=red][B]mmcblk0p27 on /cache type ext4[/B][/COLOR] [/COLOR](ro,nodev,noatime,nodiratime,barrier=1
,data=ordered)

~ # mount system
mount: mounting /dev/block/mmcblk0p25 on /system [COLOR=red][B]failed: Invalid argument[/B][/COLOR]
~ # mount data
mount: mounting /dev/block/mmcblk0p26 on /data [COLOR=red][B]failed: Invalid argument[/B][/COLOR]

it means the filesystem on eMMC was accidentally broke down. so, im trying to restore the filesystem, and get these:

list the eMMC-chip partition info

~ # fdisk -l /dev/block/[B]mmcblk0[/B]
fdisk -l /dev/block/mmcblk0
[B][COLOR=red]fdisk: can't open '/dev/block/mmcblk0': I/O error[/COLOR][/B]

format /cache with type ext3

~ # mke2fs -j /dev/block/[COLOR=blue]mmcblk0p27[/COLOR]
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
[B]First data block=1[/B]
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
[COLOR=blue]Warning: could not read block 0: [/COLOR]
[COLOR=blue]Attempt to read block from filesystem resulted in short read[/COLOR]
[COLOR=blue]Writing inode tables: done[/COLOR]
[COLOR=red][B]ext2fs_mkdir: Attempt to read block from filesystem [/B][/COLOR]
[COLOR=red][B]resulted in short read while creating root dir[/B][/COLOR]

format /system with type ext3

~ # mke2fs -j /dev/block/[COLOR=blue]mmcblk0p25[/COLOR]
mke2fs -j /dev/block/mmcblk0p25
mke2fs 1.40.8 (13-Mar-2008)
Warning: 256-byte inodes not usable on older systems
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
35760 inodes, 142847 blocks
7142 blocks (5.00%) reserved for the super user
[B]First data block=0[/B]
Maximum filesystem blocks=146800640
5 block groups
32768 blocks per group, 32768 fragments per group
7152 inodes per group
Superblock backups stored on blocks:
32768, 98304
[COLOR=blue]Warning: could not read block 0: [/COLOR]
[COLOR=blue]Attempt to read block from filesystem resulted [/COLOR][COLOR=blue]in short read[/COLOR]
[COLOR=blue]Writing inode tables: done[/COLOR]
[COLOR=blue][B]Creating journal (4096 blocks): done[/B][/COLOR]
[COLOR=blue][B]Writing superblocks and filesystem accounting information: done[/B][/COLOR]
[COLOR=blue][B]This filesystem will be automatically checked every 39 mounts or[/B][/COLOR]
[COLOR=blue][B]180 days, whichever comes first. Use tune2fs -c or -i to override.[/B][/COLOR]

format /data with type ext3

mke2fs -j /dev/block/mmcblk0p26
mke2fs 1.40.8 (13-Mar-2008)
Warning: 256-byte inodes not usable on older systems
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
75200 inodes, 300799 blocks
15039 blocks (5.00%) reserved for the super user
[B]First data block=0[/B]
Maximum filesystem blocks=310378496
10 block groups
32768 blocks per group, 32768 fragments per group
7520 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
[COLOR=blue]Warning: could not read block 0: [/COLOR]
[COLOR=blue]Attempt to read block from filesystem resulted [/COLOR][COLOR=blue]in short read[/COLOR]
[COLOR=blue]Writing inode tables: done[/COLOR]
[COLOR=blue]Creating journal (8192 blocks): done[/COLOR]
[B][COLOR=blue]Writing superblocks and filesystem accounting information: done[/COLOR][/B]
[COLOR=blue][B]This filesystem will be automatically checked every 22 mounts or[/B][/COLOR]
[COLOR=blue][B]180 days, whichever comes first. Use tune2fs -c or -i to override[/B][/COLOR].