Note
- Formatting data with PE recovery is REQUIRED for clean flash
- DO NOT use any other recovery
- The firmware is included with a different keymaster.img from perseus. DO NOT flash your own firmware.
- Keymaster is bumped to 4.0 for encryption, and cust partition is mounted as /metadata. You WILL NOT be able to boot TWRP on PE12. OrangeFox R11.1_1 or newer can boot but is not capable of decrypting the data partition.
- To switch to other ROMs, format data in PE recovery first, and then install another recovery. You may need to re-flash the required firmware, if the ROM you are going to flash does not include one.
- You can dirty flash from my previous PE 12 builds.
- You cannot upgrade from android 11 directly. Formatting data is required.
PE recovery flash guide
- Download PE recovery from the official PE website
- Boot your phone into fastboot mode. You can either
- hold power + volume down button
- or
adb reboot bootloader
- or use the
Reboot to bootloader
option in TWRP/OrangeFox
- Connect your phone to a computer
- Run
fastboot flash recovery pe_recovery_file_name.img
in your cmd/powershell/terminal - Hold power + volume up to boot into recovery
PE 12 flash guide
- Boot into PE recovery
- Select
Factory reset" --> "Format data/factory reset
. You phone should say that /data, /cache, and /metadata have been formatted. - Go back to main menu and select “Apply update” –> “Apply from ADB”
- Connect your phone to a computer
- Run
adb sideload pe_rom_file_name.zip
in your cmd/powershell/terminal and wait until it finishes - Reboot to system
Device Specific Changes
- Etude kernel: Op.12 No.2
- Linux 4.9.303 and CAF tag
LA.UM.10.3.r1-00900-sdm845.0
- removed 2 bytes of padding in network buffers
- upstreamed generic locking/refcount from 4.14
- ported arm64-specific fast refcount checking
- enabled HID WACOM driver
- wireguard 1.0.20211208
- DO NOT use another kernel. Just don’t.
- Linux 4.9.303 and CAF tag
- Brought back qcom wfd implementation
- Properly disabled surfaceflinger backpressure propagation to reduce jank in certain scenarios
- we had it disabled on android 11, but a change in surfaceflinger property on android 12 accidentally enabled it again
- Updated adreno blobs from LA.UM.9.3.r1-02700-sdm845.0
- Updated parts to newer APIs like TaskStackListener and TaskInfo
- also fixed some harmless log spams caused by SElinux
- Whitelisted an intent broadcast for the new ims.apk
- Dropped obsolete eBPF prop
- Implemented a boost after fingerprint authentication to speed up the unlocking process and avoid animation janks
ROM Side Changes
- February security patch
- Brought back Face Unlock, and it also works in apps using the standard biometric authentication mechanism
- Translation updates and misc bug fixes
Known Issues
- Rounded corners are broken. It does not seem to be an issue on the device side, as debug info reports correct values
Please report issues to jjpprrrr.