Quantcast
Channel: xda-developers - Galaxy Tab 10.1 Android Development
Viewing all articles
Browse latest Browse all 87

[ROM][P7500][ICS 4.0.4][XWMPJ] Deepsleeps like a baby - battery drain fix

$
0
0
This is the latest ROM for P7500 available on sammobiles (Czech version) with the deepsleep / wakelock / battery drain issue fixed.

Download link at the bottom of this post.

It's actually a mashup of two roms: P7500XWMPJ_P7500XEZMP1_XEZ (Czech) and P7500ZCLP9_P7500OZHLP9_CHN (China). See below for details.

Background

Since the ICS update, the P7500 tab drains the battery much faster than previous honeycomb versions. It is commonly accepted that this behavior is due to a bug in the kernel that prevents the CPU from deep sleeping. You can verify how much the tab spends in each CPU mode with the CpuSpy app.

How this was fixed

Stiffmeister, a member of a german forum (page 30 onwards) found out that the CHN firmware does NOT have this bug. Massive credit goes to him. His solution involves flashing the CHN firmware, then CWM recovery, then a CWM update that adds additional languages. It remains unknown why the Chinese ROM fixes the deepsleep issues, but so far it's the only one that does.

Phibs, a XDA member further found out that the problem can also be fixed by flashing the boot.img + kernel modules + wpa_supplicant from the chinese rom. It is explained here. Massive credit to him, too.

About this ROM

This is essentally the latest ROM from sammobile (XWMPJ - Czech) with the following modifications:
  • Replaced boot.img with CHN's
  • Replaced /lib/modules/* with CHN's
  • Replaced /bin/wpa_supplicant with CHN's

No other changes have been made other than these.

This is a non-root rom. You can root it yourself if you want. Flashing with odin won't destroy your current recovery nor your data so it's safe to flash on top of an existing stock ICS. Nandroid first. Wipe not needed if coming from stock ICS. Flashing on top of honeycomb not tested.

How to cook your own

If you want to use another (non-Czech) rom as a base and patch it with the china boot.img yourself, follow this procedure:
  1. Grab the two roms from sammobile.
  2. Grab ext4_utils from here.
  3. Go to linux
  4. Unzip ext4_utils and make them:
    Code:

    make
  5. Untar the roms in two separate folders (I used cn for china, cz for czech)
  6. On cn and cz, use simg2img from ext4_utils to turn system.img into an ext4 raw file:
    Code:

    ./simg2img cn/system.img cn/system.ext4
    ./simg2img cz/system.img cz/system.ext4

  7. Mount both cn and cz images:
    Code:

    mkdir cn/fs
    mkdir cz/fs
    sudo mount -o loop cn/system.ext4 cn/fs
    sudo mount -o loop cz/system.ext4 cz/fs

  8. We will be replacing cz's kernel with cn's later, these are dependent files that need to be copied over from cn to cz:
    Code:

    sudo cp cn/fs/lib/modules/* cz/fs/lib/modules
    sudo cp cn/fs/bin/wpa_supplicant cz/fs/bin/wpa_supplicant
    sudo cp cn/fs/bin/wlandutservice cz/fs/bin/wlandutservice

  9. Now, find out what the block size and count were in the original img. Size * count / (1024 * 1024) will give you the filesystem size in MB, we will use it in the next step.
    Code:

    tune2fs -l cz/system.ext4
  10. Rebuild the android image with make_ext4fs (from ext4_utils). 578M is the size in MB, and 4096 is the block size from the above step:
    Code:

    rm cz/system.img
    sudo ./make_ext4fs -s -l 578M -b 4096 -a system cz/system.img cz/fs

  11. You can unmount and remove temporary stuff now:
    Code:

    umount cn/fs
    umount cz/fs
    rmdir cn/fs cz/fs
    rm cz/system.ext4

  12. Copy boot.img over from cn to cz:
    Code:

    cp cn/boot.img cz/boot.img
  13. If you have a custom recovery such as CWM and don't want it to be destroyed by odin when flashing this, remove cz/recovery.img:
    Code:

    rm cz/recovery.img
  14. Now, Odin needs all the img files packed into a tar file with a md5 checksum pigtailed at the end:
    Code:

    cd cz
    tar -H ustar -c *.bin *.img > rom.tar
    md5sum rom.tar >>rom.tar
    mv rom.tar rom.tar.md5

  15. That's it, go to Odin and flash rom.tar.md5

Download

P7500XWMPJ_deepsleep.7z (350.2 MB)
https://mega.co.nz/#!gskmkbYI!VA8F8y...gUMTPcE7mmdkUs

Viewing all articles
Browse latest Browse all 87

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>