awesom3: dynamic partition table resizing ~ twrp 2.8.0.0

Search This thread

reshampanth

Senior Member
Jul 14, 2012
239
69
Mumbai
www.epiblog.in
@thewisenerd and other users here. Needing some help please.
Lines from OP (Need a clarification on one thing)
Q: How to use?
A:
Wipe the system, data and cache partition.
fastboot flash the given recovery.img.
wipe the system, data and cache partitions, again. preferably use flash_erase on the partitions.
flash your preferred ROM
flash the given kernel, *with* aw3som3
you're good to go!

I have three doubts:
1) Does the ROM have to be aw3som3 based only or I could just download CM11 rom and just flash it (obviously as per the above steps).
2) If the specific ROM's OP has said that I need to make partitions and has given his steps and stuff (but the OP is not upto date sometimes as old as 2013's last edit) then can I just ignore that ROM's partition methods and go ahead step by step with what is mentioned here?
3) The device I am going to do this on is totally stock. Not a single thing done like rooting or any other stuff. So my doubt is that after I am done with rooting it, can I just proceed with the steps mentioned here in the OP or do I need to do something else too?
Also thanks a lot dev for working on such an old device and giving it a new life. I just read back a few pages and found your posts which were very helpful.

1) Yes you can only install aw3som3 based roms like omnirom, cm weekly or cm beta rom.
2) It's possible that the op might be not updated. Just download the latest version of the ROM and proceed with thewisenerd's instructions.
3) First unlock your bootloader and then root the phone. Then make an Sd-ext partition (around 1GB) on your SD-card and then flash any rom!

Sent from my MI 3W using XDA Free mobile app
 
  • Like
Reactions: Daedulus Minion

Daedulus Minion

Senior Member
Jul 15, 2013
769
230
Mumbai
1) Yes you can only install aw3som3 based roms like omnirom, cm weekly or cm beta rom.
2) It's possible that the op might be not updated. Just download the latest version of the ROM and proceed with thewisenerd's instructions.
3) First unlock your bootloader and then root the phone. Then make an Sd-ext partition (around 1GB) on your SD-card and then flash any rom!

Sent from my MI 3W using XDA Free mobile app
Thanks. :)
 

XenoMorphv2

Senior Member
Mar 28, 2013
68
24
a request ?

thewisenerd i know you already busy.... but if you have leisure time :angel: is that any way to install new miui roms ? on pico ? with awesome ? i only wish :eek: is that possible :confused: ....

and i know pico has miui roms already but lastest version is very slow :rolleyes: and your roms awesome bro ;) :good:
 

thewisenerd

Senior Member
Sep 27, 2012
1,385
2,996
21Oct2014
- 128 mB userdata partition
- Fix wiping crash when block device is not present (credits to Ethan Yonker)
- mtp: fix log spam: findNode not finding a node is not an error (credits to that)
- Update reference to 24-hour clock (credits to Captain Throwback)
- display cpu temperature in twrp use TW_NO_CPU_TEMP := true to disable display use TW_CPU_CUSTOM_PATH := path to set custom path (credits to Jenkins)
- Add support for TrueType fonts (credits to Vojtech Bocek)
- Fix exfat-fuse handling (credits to Dees Troy)
- performance profile support (credits to Tom Hite)
- mtp: cleanup, fixes and performance improvements (credits to that)
- Update RECOVERY_VARIANT blocking to use project-path-for (credits to Matt Mower)
- Attempt to fix md5 issue with backups (credits to Captain Throwback)
- applypatch: add support for BML partitions (credits to Conn O'Griofa)
- atime is access time, let's just use mtime (credits to Jenkins)
- Remove extra slashes from zip path in openrecovery (credits to Matt Mower)
- Fixes for exfat-fuse (credits to Captain Throwback)
- recovery: Fix adb with linux 3.10 (credits to Benoit Goby)
- ADB sideload command not work (credits to Da Zhou)
- Check sehandle before fixing permissions (credits to Dees Troy)
- Attempt to automatically identify data/media devices (credits to Ethan Yonker)

Download: https://www.mediafire.com/?fhu591s552uo5nd

P.S. Something kewl for the recovery coming soon :) (z31s1g's "TWRP Materialised" theme as soon as it releases)
attachment.php
 

Attachments

  • Screenshot_2014-10-21-16-55-50.png
    Screenshot_2014-10-21-16-55-50.png
    27.5 KB · Views: 10,033
Last edited:

mrchezco1995

Senior Member
May 29, 2012
314
532
Balagtas
www.youtube.com
My Pico doesn't like aw3som3 recoveries anymore?

Not sure if it's just me or what but...

Welp! My pico doesn't like aw3som3 recoveries anymore.... I've been on Sense 4 rom for quite a while now and I wanna go back to CM11 RC3...

For some reasons, everytime I flash an aw3som3 recovery on my phone now, and boot to recovery, it just shows TWRP splash screen, screen turns off, splash again and it's stuck.......

But when I try non-aw3som3 recoveries, they're fine.....

Okay I dunno what just happened... :/

Welp!




Sent from Ponyville
 

XenoMorphv2

Senior Member
Mar 28, 2013
68
24
Bro i guest wipe all partitions and flash other recoverys non awesome ...than wipe partitions than flash awesome... idk what i say.... but i flash RC3 with this solution... ( first time i flashed 2.8.0.0 awesome dont flash 2.8.0.0 for RC3 or RC4 :)D) flash 2.7.0.0 awesome )
 

ovimunt

Senior Member
Mar 22, 2011
224
64
London
Is it possible to change partitions on HTC One S (Ville)?

I've got CM 10.2 and I don't need 1.6GB on my /system partition, that's over 1GB of space wasted.

Thanks
 

mirhl

Senior Member
Oct 15, 2012
3,129
1,171
Is it possible to change partitions on HTC One S (Ville)?

I've got CM 10.2 and I don't need 1.6GB on my /system partition, that's over 1GB of space wasted.

Thanks
One S has even s-off
So it's certainly possible

Sent from my Xperia S using XDA Free mobile app
 

mirhl

Senior Member
Oct 15, 2012
3,129
1,171
Hi, yes I've got S-OFF so I assume it's possible to resize the partitions.

The question is how? :confused:
Let's say that awesom3 is a more-complex-than-it-should-be solution for those phones where s-off has not been achieved.
Theoretically, once you have disabled security, you could even properly repartition your phone (without messy workaround/patched kernels as this solutions)

This is how it's possible on my xperia.. (warning: nobody says this could not destroy your partition table)
I don't know though what's the recommended solution for one S
 

exquisite.nish

Senior Member
Jan 18, 2013
69
14
New Delhi
Need help

My problem

I was on awesom3 twrp2.8 cm11rc4...but in order to fresh install rc4 i flashed awesom3 2.7 from phone terminal.

Now unable to install cm11rc4 and unable to flash awesom3 2.8 from twrp terminal.
Error -
su
flash_image recovery /sdcard/recovery.img

mtd: erase failure at 0×0000... (Many lines below)
...
wrote recovery partition

I used mount/unmount
Placed recovery.img in system/bin too but no progress.

I dont hv a laptop right now...so isn't there any way from twrp terminal or recovery.


(Rom backup restore also fails)
 
Last edited:

frannq

Member
Aug 18, 2012
35
3
hi i need help i can't flash any rom. i flash 2.8.0.0 recovery via fastboot and flash cm11 aw3som3 but stay in bootloop.
i try use 2.7.0.0 recovery but can't mount sdcard. what i can do?
sorry for my english is very poor.
tanks.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 33
    This started out as a little side project on the OmniROM threads, and it's about time some things are clarified, and what exactly done, is explained.

    Currently, only a modified version of TWRP 2.7 recovery is available, and we *might* support other recoveries soon :)
    We have moved ahead of the TWRP 2.7.0.0 originally available in orig-development, to 2.7.1.0, and eventually to 2.8.0.0 too. Enjoy!

    What is aw3som3?
    Developers have long tried to sqeeze in ROMs into legacy devices with low internal memory, and one of the ways to do this was by using custom tailored mtd_parts, which gave the kernel a partition table to use, with resized partitions. This was widely used on many devices like the HTC G1, MT3G, Hero, Evo4G, Desire, etc.

    While that was a viable option for the HTC Pico, a small "problem" that popped up was that different phones have different NAND Devices, with different partition tables and pagesizes. Incase the modified custom mtd_parts even accidentally touched the boot partition, or has been offset'ed out of the available space, a partition would be lost.

    As a solution, dynamically obtain 32 mB from userdata partition, and 48 mB from the cache partition, and hax the partition table as soon as the information is got from ATAG. This should make this method work on *almost* all Pico's out there, which have partition layouts as misc:recovery:boot:system:cache:userdata:devlog and partitions in the order misc:rec..cache:devlog:userdata.

    I've changed the partition table layout, without modifying the actual mtdblock<n>, thus no further fstab/ramdisk editing is required.
    table: 0->misc::1->recovery::2->boot::3->system::4->cache::5->userdata::6->devlog
    original layout : recovery:boot:system:cache:devlog:userdata:misc
    new layout : recovery:boot:misc:devlog:userdata:cache:system

    To developers:
    In case you want to modify any of the partition size defines, there are three defines, CACHE_SIZE_LEAVE, USERDATA_SIZE_LEAVE, and DEVLOG_SIZE_LEAVE. This, will leave that much mB as defined, and take the rest, put it in system partition. The default defines are: 8, 4 and 1 respectively.
    You may clone this repo, and follow the following steps:
    • download and compile kernel from android-4.4-recovery branch from https://github.com/thewisenerd/android_kernel_htc_pico
    • put compiled zImage (arch/arm/boot/zImage) in root directory (i.e. cloned directory)
    • run the following command to repack recovery ./repack.sh
    • output recovery would be in output/recovery.img

    Downloads:

    1. TWRP 2.8.0.0: http://xdaforums.com/showpost.php?p=56168368&postcount=125

      [*] TWRP 2.8.0.0: http://xdaforums.com/showpost.php?p=55685051&postcount=108(26 sep 2014)
      [*] Modified TWRP 2.8.0.0: http://xdaforums.com/showpost.php?p=55430289&postcount=106(14 sep 2014)
      [*] Modified TWRP 2.8.0.0: http://xdaforums.com/showpost.php?p=55375649&postcount=104(11 sep 2014)
      [*] Modified TWRP 2.7.1.0: http://xdaforums.com/showpost.php?p=55246774&postcount=97 (05 sep 2014)
      [*] Modified TWRP 2.7.0.0: http://xdaforums.com/showpost.php?p=54709263&postcount=69 (09 Aug 2014)
      [*] Modified TWRP 2.7.0.0: http://xdaforums.com/showpost.php?p=54688800&postcount=65 (08 Aug 2014)
      [*] Modified TWRP 2.7.0.0: http://xdaforums.com/showpost.php?p=54484381&postcount=58 (30 Jul 2014)
      [*] Modified TWRP 2.7.0.0 (resized): http://xdaforums.com/showpost.php?p=53704940&postcount=6
      [*] Modified TWRP 2.7.0.0: http://d-h.st/I4L

    Kernel: You may use CodyKernel or the kernel provided by your ROM's developer that supports aw3som3.

    Q: How to use?
    A:
    • Wipe the system, data and cache partition.
    • fastboot flash the given recovery.img.
    • wipe the system, data and cache partitions, again. preferably use flash_erase on the partitions.
    • flash your preferred ROM
    • flash the given kernel, *with* aw3som3
    • you're good to go!

    Sources
    you can get the patches here:

    PS#1: 0001-aw3som3-hax-the-partition-table.patch

    PS#2: 0002-aw3som3-set-msm_nand_data.parts-later.patch

    PS#3: 0003-aw3som3-rearrange-and-relay-the-partition-table.patch


    I've moved all the partition re-laying, resizing, etc, to a separate file, in drivers/misc, which should help keep clean the nand_partitions.c file, and we would have to worry only about one file, and related code. It also means that awesom3 is reduced to one patch
    PS#1 (26Sep'14):
    0001-awesom3-hax-the-partition-table.patch
    0002-awesom3-allow-a-128-mB-userdata.patch

    XDA:DevDB Information
    awesom3, Tool/Utility for the HTC Pico (Explorer)

    Contributors
    thewisenerd

    Version Information
    Status: Stable

    Created 2014-10-21
    Last Updated 2014-10-21
    21
    the recovery has been resized, hopefully. get another beta here: http://www.solidfiles.com/d/e6d39a02c4/recovery.img

    hopefully, we're just a few commits away from a complete partition table rewrite... I've decided to move devlog to the beginning, then, a 4 mB cache (you shouldn't need more), and the rest for the /system partition. What about /data? sd-ext becomes /data partition by default. I posted a poll on the FB group and most of the people are clearly fed up with internal memory being very low hence, already using sd-ext by default, why "waste" the data partition?

    This would stay in beta till some more time.

    a new build of twrp should be out any time soon... the kernel, slimmered down to 1.8 mB without affecting actual functionality, *and* adding back support for ext2/3 and exfat and ntfs.

    the recovery's size has been slimmered too, by modifying its ramdisk compression. you might not be much interested in all that, but you should see the change in recovery size from this build itself.

    and finally, here's the boot.img: http://d-h.st/5jK

    proof that it works (otherwise which no one's going to download anyways):
    attachment.php


    as we are going to use complete /data partition + some moar of cache partition, 112 +
    9
    a major update to the recovery.

    i've changed the partition table layout, without modifying the actual mtdblock<n>, thus helping to keep first things first.
    table: 0->misc::1->recovery::2->boot::3->system::4->cache::5->userdata::6->devlog
    actual layout: recovery::boot::system::cache::devlog::userdata::misc
    new layout: recovery::boot::misc::devlog::userdata::cache::system

    Also, instead of taking 32 mB from userdata, 48 mB from cache, I've modified the logic a lil', thus, keeping 3 defines, CACHE_SIZE_LEAVE, USERDATA_SIZE_LEAVE, and DEVLOG_SIZE_LEAVE. This, will leave that much mB as defined, and take the rest, put it in system partition. The default defines are: 8, 4 and 1 respectively.

    Also, I've added some sanity checks, thus, if one/more partitions aren't as they should be, the partition table wouldn't be touched at all.

    Code will be cleaned up and commit'ed later.

    Yes, this will mean, you would need to recompile the kernels for existing ROMs using aw3som3, or even otherwise, yet, that's up to you and your (rom's) developers.

    And, this does mean, that it would be an sd-ext for /data shift. You don't want to? that's still going to be your problem. Or, maybe your developers could compile a kernel, and a recovery that has some more allocation. still, *your* problem.

    Download: http://www.mediafire.com/download/69m79oie00115bn/recovery.img
    patches: up in my github. check first post.

    what's the benefit: frankly, I don't see any. But, hey! When I can get a ~440 mB /system partition out of my phone, why not?

    Also, to differentiate between normal and aw3som3 recoveries, I've added a lil' text to the recovery.
    it should look like the below:
    attachment.php

    and some proof:
    attachment.php
    8
    21Oct2014
    - 128 mB userdata partition
    - Fix wiping crash when block device is not present (credits to Ethan Yonker)
    - mtp: fix log spam: findNode not finding a node is not an error (credits to that)
    - Update reference to 24-hour clock (credits to Captain Throwback)
    - display cpu temperature in twrp use TW_NO_CPU_TEMP := true to disable display use TW_CPU_CUSTOM_PATH := path to set custom path (credits to Jenkins)
    - Add support for TrueType fonts (credits to Vojtech Bocek)
    - Fix exfat-fuse handling (credits to Dees Troy)
    - performance profile support (credits to Tom Hite)
    - mtp: cleanup, fixes and performance improvements (credits to that)
    - Update RECOVERY_VARIANT blocking to use project-path-for (credits to Matt Mower)
    - Attempt to fix md5 issue with backups (credits to Captain Throwback)
    - applypatch: add support for BML partitions (credits to Conn O'Griofa)
    - atime is access time, let's just use mtime (credits to Jenkins)
    - Remove extra slashes from zip path in openrecovery (credits to Matt Mower)
    - Fixes for exfat-fuse (credits to Captain Throwback)
    - recovery: Fix adb with linux 3.10 (credits to Benoit Goby)
    - ADB sideload command not work (credits to Da Zhou)
    - Check sehandle before fixing permissions (credits to Dees Troy)
    - Attempt to automatically identify data/media devices (credits to Ethan Yonker)

    Download: https://www.mediafire.com/?fhu591s552uo5nd

    P.S. Something kewl for the recovery coming soon :) (z31s1g's "TWRP Materialised" theme as soon as it releases)
    attachment.php
    8
    twrp 2.8.0.0

    changelog

    • Fix handling of MTP fork/child process (upstream)
    • Include no strict aliasing for MTP (upstream)
    • Additional checks to prevent partitioning internal storage (upstream)
    • pico: use twrp.fstab (help unify recovery compilation with device tree)
    • removed UMS
    • updated MTP configs (Sachin Thomas)
    • aw3som3 -> awesom3

    download: http://www.mediafire.com/download/m1bdj23g36bg1lp/recovery.img

    note:
    1. I've thought about the removal of UMS and felt that it was the right thing to do. Keeping both UMS and MTP sure caused some amount of unnoticeable conflict, which caused either one of them to work, not the other. And since TWRP seems to have moved to UMS by default (so is android-4.4), it would be the right thing to do.
    2. aw3som3 -> awesom3: this means a considerably big change. I've moved all the partition re-laying, resizing, etc, to a separate file, in drivers/misc, which should help keep clean the nand_partitions.c file, and we would have to worry only about one file, and related code. It also means that awesom3 is reduced to one patch (this), and is officially renamed (for awesom3 is easier to 'spell' (one '3')).