Add Android dynamic partition support
Will be used in Android >=13 for larger capacity and future-proofing. New full system size: 6336 MiB. Verified with pending nx Android device tree changes.
This setup offers a choice rather than fully removing compatibility with older versions-- when a user sets the Android userdata bar to a nonzero amount, the prompt is enabled.
Potential annoyances:
- The Android system size define for calculating bar sizes etc. is set to the highest common denominator
- Selecting a box on the normal warn prompt after selecting an Android partition size yields
an odd graphical glitch on the button--not breaking but weird (much worse effect before
adding
manual_system_maintenancecalls)
NOTE: using more sane partition names now instead of the NVIDIA three-char spec.
Partitions:
- boot (64 MiB)
- recovery (64 MiB)
- misc (3 MiB)
- cache (61 MiB)
- super (6 GiB, will contain system, system_ext, vendor, product, odm)
- userdata
Changes made--not sure if you'd find the uneven button description lines a bit aesthetically displeasing--Android 10-11 is a lot shorter than Android 13 or later in terms of line length, but it's probably fine. Changes verified on now-pushed updates to the pending Lineage commits and booted properly to launcher.
- Description can be changed to Android 13+.
- Or the buttons can be used since they are size changeable but still "Android 13+" should be used
- Or split title and desc so desc can be left aligned, but this also needs the pop up width changed
Also #define ANDROID_SYSTEM_SIZE_MB 6144 // 7 GB. ->
#define ANDROID_SYSTEM_SIZE_MB 6144 // 6 GB. Fits both Legacy (4912MB) and Dynamic (6144MB) partition schemes.
Comments are there to answer "wth is that this size" future questions.
I reduced the width to LV_HOR_RES / 10 * 5, swapped title, and used "Android 13+"
Looks better to me, let me know if you would like any further changes.
Merged via https://github.com/CTCaer/hekate/commit/f37ae083ae10a32e4f654f0b90e8211f4fffdbca