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 PE 12.1. 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 / 12.1 builds. You can dirty flash the Plus edition on top of PE 12 / 12.1 regular 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.1 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.3
- Linux 4.9.310
- CodeLinaro tag
LA.UM.10.3.r1-01700-sdm845.0
- adapted qcom’s kgsl perf counter change to non-privileged scratch buffer
- ported compiler friendly vectorization for XOR from mainline kernel
- ported arm64-specific crc32_be optimization from mainline kernel
- ported Arm Optimized Routines for strcmp and strncmp from mainline kernel
- merged and adapted lots of branch prediction hardening code from android common kernel
- fixed qcom’s PSCI BP hardening mitigation for kryo2xx/3xx cores after new macro changes and fine-grained capabilities
- built with the latest LLVM Clang 15.0
- DO NOT use another kernel. Just don’t.
- Fixed rounded corners. (Finally.)
- Updated the display HAL from CodeLinaro branch
display.lnx.4.3.r1-rel
- Plus edition: Brought back LiveDisplay where you can choose color profiles and calibrate the screen
ROM Side Changes
- April security patch
- Fixed charging animation not appearing
- Fixed unlock sound playing repeatedly
- Fixed incorrect APN configs for Vodafone NL
- Updated translations
- Plus edition has features including but not limited to
- Gesture customizations
- Power and volume button actions
- Network traffic indicator
- Statusbar customizations
- Lockscreen customizations
- Per-app volume control
- Brightness related options
Please report issues to jjpprrrr.