Featured image of post PixelExperience 12.1 / 12.1 Plus 20220521-0400 Official Polaris Build

PixelExperience 12.1 / 12.1 Plus 20220521-0400 Official Polaris Build

Linux 4.9.315, lz4 fix, LSE atomics, Spectre-v2 mitigation fix, WFD generic mouse input, GL HWUI renderer, May security patch, and many fixes!


  • 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 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.315
    • fixed a potential out-of-bound read in lz4
    • enabled ARMv8.1-a LSE atomics
    • fixed and optimized spectre-v2 mitigation enable logic for kryo385
    • DO NOT use another kernel. Just don’t.
  • Brought WfdCommon and IFAA back in tree and enabled generic mouse input for Qualcomm’s WiFi Display
  • Switched back to GL for HWUI renderer (from Vulkan)
    • display artifacts when playing videos in some apps should be fixed
  • Moved to qcom’s unified USB init scripts
  • Used the cgroup and task_profile configs from system directly

ROM Side Changes

  • May security patch
  • Added and fixed a few APN configs
  • Fixed the battery widget for supported Bluetooth devices
  • Fixed the rotation button for 2-button navbar mode
  • Plus edition:
    • Fixed the statusbar brightness control
    • Reverted white QS background to the default AOSP style

Download | XDA thread

Please report issues to jjpprrrr.

Licensed under CC BY-NC-SA 4.0
comments powered by Disqus
Built with Hugo
Theme Stack designed by Jimmy