[T-Mobile Samsung Galaxy S II SGH-T989] peterNYC:
Complete Android newbie/dummy. Sophisticated Linux user.

Samsung Galaxy S2 T-Mobile version (SGH-T989). I think it's called "Hercules" -- it's the S2 without a home button. I previously installed CWM with Odin and rooted it by placing an su package on the sdcard. Didn't use the phone for a couple of years. Gave it to my wife after her phone was stolen. Seems to be stuck in the boot process. It boots to where I see "Samsung" logo, but the OS never comes up. Here's what I've done so far:

Reformatted the SD card on Linux using mkdosfs -F 32 -I /dev/sdf1. The SD card is 64GB, which is technically unsupported, but when the phone worked, it was able to use the SD card with no problems.

Installed a bootloader named TWRP 2.8.7.0. I can get into TWRP's environment, but not everything works as I expect it to.

Mount

The "Select Partitions to Mount" section is empty, which is unexpected since I have an FAT32 formatted SD card installed. Furthermore, when I press the "Mount USB Storage" button, I see the following error messages on the console:

E: Mount: Unable to find partition for path '/cache'

E: Mount: Unable to find storage partition to mount to USB

Install

At the top I see: "Storage: ( MB)", and underneath I see what looks to be a Unix filesystem. Obviously / is mounted (and I assume the partition is on the phone's internal memory), but the size isn't being detected by TWRP since the storage size is undefined. When I press "Storage" it asks me to select the storage, but the list is completely empty. Again, the SD card doesn't show up. Normally I'd "blame" my unsupported SD card size, but: a) it previously worked, and b) TWRP can't detect the storage size of the root partition, so something funny is happening.

Bootup

This might be the heart of the matter. When the phone boots into TWRP, there are some very ominous looking error messages:

E: Invalid block device on '/dev/block/mmcblk0p3

/boot

emmc defaults

defaults

', 'emmc', 72

E: Invalid block device on '/dev/block/mmcblk0p22

/recovery

emmc defaults

defaults

', 'emmc', 72

E: Invalid block device on '/dev/block/mmcblk0p24

/system

ext4 ro,errors=panic

wait

', 'ext4', 42

If this were a Linux system, I would suspect one of the following:

Perhaps /etc/fstab is referencing the wrong /dev/ files.

Perhaps the block device in question (e.g. hard drive) is failing.

Perhaps udev is not populating /dev/ properly.

As a last comment, when I poke around using TWRP's file manager, /boot is empty. The kernel should be in there, yes? OK, if so, then that's a very, very big problem. :eek: /recovery is empty. Interestingly, /system contains a single directory, /bin, which is empty. /sbin contains what you'd expect. /etc has an fstab, mtab, mke2fs.conf, and recovery.fstab.

Interestingly, /dev/block/mmcblk0p24, /dev/block/mmcblk0p24, and /dev/block/mmcblk0p3 all exist. This seems to indicate that udev is doing its job correctly (and I think also that /etc/fstab is ok). So maybe this is a hardware problem?

This is very strange because although I'm very comfortable with Linux, I'm feeling particularly helpless, and like I'm going around in circles.

Can some kind soul help me find my way?