• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Root Indulge BML Partition Mapping

ciper

Android Enthusiast
I'm sure this information is out there but I couldn't find it. I did a quick look through the phone tonight and made some guesses based on the data format. Here is as far as I got

1 Bootloader 256kb
2 PIT 256kb
3 EFS 10mb
4 EFS2 3mb
5 Secondary boot loader (Binary match to 6) 1.3mb
6 Backup secondary boot loader (Binary match to 5) 1.3mb

7 Param 5mb
"logo.jpg
ani_upload_2_cp_crash.jpg
ani_upload_3_forced_upload_hvga.jpg
charging.jpg

8 boot kernel. (Binary match to 9) 7.6mb
9 recovery kernel. (Binary match to 8) 7.6mb
10 factoryfs /system/ 316mb
11 /dbdata/ (has SMS including "deleted") "personal data" in task manager summary 111mb
12 /cache/ 35mb
13 lte_modem Contains some cleartext 12mb
LTE wait SEMAPHORE to write CMC_INIT_COMPLTE
LTE send CMC_INIT_COMPLETE
LTE wait for AP_CODE_COPY_COMPLETE or RAM DUMP CMD

14 Totally empty but supposedly the cdma modem?

And 15 labeled "movinand" which is most likely referring to the 2gb storage mentioned in post 4. Odin will flash a movinand.bin file to /data. This tool may be useful if we can figure out how to get a dump of it http://movitool.ntd.homelinux.org/trac/movitool/wiki/movinand

I made backups of all 14 including the empty space. Most of the information was gleamed by opening the dumps in a hex editor or with busybox strings /dev/block/bml7 piped to more or head
 
Found out some new information. The Indulge has two distinct areas of internal memory. There is flash where all of the phones OS/bootloaders/kernels/firmware live and then a 2GB "Movinand" card stuck to the motherboard.

Verify this by opening up terminal emulator and run either "mount" with no arguments or "cat /proc/self/mountinfo" and you will see that /data is mounted to /dev/mmcblk0p1 and /data/fota to /dev/mmcblk0p2. The rest of the "folders" are on /dev/block/stlX which signifies the flash. Then knowing the internal eMMC is 2gb or 2000000kb divide that by 1024k and you get approximately 1.95gb. Now if you run "df" from the terminal you will see that /data is 1869744k and /data/fota is 80704k. Add those together and you get the expected 1.95gb

All of the folders you see in root except for /data are on the flash. This means you truely have 2gb of internal storage (minus 80mb for updates) for storing your personal crap. One funny side effect is that deleting system applications wont actually give you any more room to install apps.

I plan to do some benchmarks on read/write speeds of the flash and eMMC to determine if there is any performance benefit to having apps in one place or the other
Thanks to K0nane for answering random questions while I mess around on the phone
 
The first partition of the external SDcard is /dev/block/mmcblk1p1 . This is because mmcblk0 is the INTERNAL 2gb card. You can test this by unmounting the card from the settings menu then running "mount -t vfat /dev/block/mmcblk1p1 /sdcard" from the terminal :)

Key Mappings courtesy of Silvist who bravely installed V2.5.1.0 CWM meant for the i9000
volume up 1
vol down 50
camera 15
back arrow 8
Home key 43
Up arrow 19
Down 24
enter 23
delete 18
 
Mount points of the Cricket SCH-r915. Unfortunately an SD card wasnt inserted at the time so its not entirely complete
Code:
[SIZE=1]
[SIZE=2]rootfs / rootfs rw 0 0
tmpfs /dev tmpfs rw,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
/dev/block/stl6 /mnt/.lfs j4fs rw,relatime 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,relatime,size=4096k 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/stl9 /system rfs ro,relatime,vfat,log_off,check=no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/mmcblk0p2 /data rfs rw,nosuid,nodev,relatime,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/stl10 /dbdata rfs rw,nosuid,nodev,relatime,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/mmcblk0p1 /preinstall rfs rw,nosuid,nodev,relatime,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/stl11 /cache rfs rw,nosuid,nodev,relatime,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8 0 [/SIZE]0[/SIZE]
If you put it side by side with the Metro R910 you'll see that essentially everything has changed. Here is the Metro R910 output
Code:
[SIZE=2]rootfs / rootfs rw 0 0
tmpfs /dev tmpfs rw,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
/dev/block/stl7 /mnt/.lfs j4fs rw,relatime 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,relatime,size=4096k 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/stl10 /system rfs ro,relatime,vfat,log_off,check=no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/mmcblk0p1 /data rfs rw,nosuid,nodev,relatime,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/stl11 /dbdata rfs rw,nosuid,nodev,relatime,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/mmcblk0p2 /data/fota rfs rw,nosuid,nodev,relatime,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/stl12 /cache rfs rw,nosuid,nodev,relatime,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/vold/179:9 /mnt/sdcard vfat rw,dirsync,nosuid,nodev,noexec,relatime,uid=1000,gid=1015,fmask=0002,dmask=0002,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
/dev/block/vold/179:9 /mnt/secure/asec vfat rw,dirsync,nosuid,nodev,noexec,relatime,uid=1000,gid=1015,fmask=0002,dmask=0002,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
tmpfs /mnt/sdcard/.android_secure tmpfs ro,relatime,size=0k,mode=000 0 0
/dev/block/dm-0 /mnt/asec/com.gameresort.stupidzombies-1 vfat ro,dirsync,nosuid,nodev,noexec,relatime,uid=1000,fmask=0222,dmask=0222,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0[/SIZE]
 
Back
Top Bottom