Skip to content

Releases: erg-raphael-5-4/android_kernel_xiaomi_sm8150

RaphGhost-5.4.302-b29e8f247229-20261013

Choose a tag to compare

RaphGhost kernel for raphael (Redmi K20 Pro / Mi 9T Pro), Linux 5.4.302.

⚠️ THIS KERNEL WON'T WORK ON 4.14-BASED ROMS. IT IS A 5.4 KERNEL AND NEEDS A ROM BUILT FOR THE 5.4 KERNEL. FLASHING IT ON A 4.14-BASED ROM WILL NOT BOOT.

All three zips are built from commit b29e8f247229 (derp-17). It is the same kernel DerpFest 17 13/10/2026 ships as its non-root kernel.

Kernel Zip Commit
KernelSU-Next v3.4.0-legacy (root) RaphGhost-5.4.302-KSUN-v3.4.0-legacy-b29e8f247229-20261013-0831.zip b29e8f247229
No root RaphGhost-5.4.302-NoRoot-b29e8f247229-20261013-1032.zip b29e8f247229
KernelSU-Next v3.4.0-legacy + Droidspaces RaphGhost-5.4.302-KSUN-v3.4.0-legacy-Droidspaces-b29e8f247229-20261013-1036.zip b29e8f247229

Flash any one zip from recovery (AnyKernel3). It replaces the kernel, dtb and dtbo and keeps the ROM's boot ramdisk. uname -r shows the type and commit, e.g. 5.4.302-RaphGhost-KSUN-b29e8f247229.

Root (KSUN zips): use the official KernelSU-Next v3.4.1 manager from https://github.com/KernelSU-Next/KernelSU-Next/releases (the kernel side speaks uapi 5, which v3.4.0 doesn't). If Magisk was ever installed, dirty-flash the ROM zip first to get a clean boot image, then flash the KSUN zip.

Changes since the previous zips (0e9e286)

Charging

  • USB PD / PPS fast charging works. raphael's SMB1390 charge pump is now driven by the Qualcomm PSY driver, and the legacy charging ABI that the QC3/hvdcp_opti charging service and Xiaomi's charging logger use is restored (62bdc274b1f3; ABI from Helium-Studio 7042c443320b and XiaoYeZi 236d5a3f8431, c0b7f98feb04, ae4890cba456; 4f0c3ca7eb73, cd361098ac2a). Tested on Samsung 25 W and Anker 140 W chargers.
  • PPS requests are capped at the 9 V the input can take. The charging service used to step a 140 W charger up to 10.4 V, the input collapsed, and charging dropped and reconnected every ~35 s (03b185aeeb72, 7f65a99f7638).
  • The charge pump stops 50 mV below the battery's float voltage and the main charger finishes the charge, so an aged, high-resistance battery can't overshoot into the over-voltage cutoff (7615ecf5ef3a).

Battery level

  • The fuel gauge can learn a worn battery's real capacity: learning may now start while the phone is already charging, and may lower the capacity by up to 30 % per cycle instead of 10 % (8a3fef00901c, b29e8f247229). Without it, a worn battery showed e.g. "34 %" and then shut down empty. Learning needs one uninterrupted charge to full that starts at 15 % or lower. Nothing about capacity or health is hardcoded.
  • No bogus state-of-health at boot: the fuel gauge reports no SOH until userspace sets it (7a315c2671fc).

Sleep and standby

  • Deep sleep: fixed a typo in the CPU cluster idle state (entry latency 2411 µs instead of 241 µs), which kept the cluster out of its deepest state far more often than it should. Ported from HeliumStudio-Dev (f056087e9615).
  • The two PCIe controllers (nothing is attached on raphael) are disabled, and the NPU's DDR bandwidth vote is dropped while the CPU sleeps. Ported from HeliumStudio-Dev (07648b143f09).

Bluetooth

  • Headphones and earbuds reconnect on their own again after being turned off and on. The Bluetooth UART now keeps its RFR line ready while it sleeps, so the controller can wake it (3878d80636da).

Display

  • Panel idle state and early wake-up sysfs nodes, ported from the SOVIET kernel (8140534cdd41 by Adrian Salido, f3ab4ec8207b by Midas Chien). The DerpFest 17 device tree uses them for idle power and faster wake-up; on other ROMs they are unused.

Memory

  • Fixed a memory-cgroup accounting warning triggered by ART's garbage collector through userfaultfd (455d9dfc47a3).

Logs

KernelSU-Next

  • Synced with upstream legacy 8869bd768d66 (v3.4.0-legacy): the service stage is no longer triggered repeatedly (Riefe 24, 06ab25d80d56), and the manager package name is pinned (ThRE Team, 9ac3b5167734).
  • Not in these zips yet: upstream legacy d652a89d (10/10: sepolicy avtab/xperm fixes, package-observer deadlock fix) and bda55da7 (12/10: rewrite of the SELinux hide feature). They come in the next release after testing.

MD5:

23e4ab2cc71a2523c38308dcdee7980d  RaphGhost-5.4.302-KSUN-v3.4.0-legacy-b29e8f247229-20261013-0831.zip
843473ca38753b7f5c61bd4276d8ba7b  RaphGhost-5.4.302-NoRoot-b29e8f247229-20261013-1032.zip
10a0d8ac72c39b05dc781506c081dbb3  RaphGhost-5.4.302-KSUN-v3.4.0-legacy-Droidspaces-b29e8f247229-20261013-1036.zip

RaphGhost-5.4.302-gbde19bd69353-20261001

Choose a tag to compare

RaphGhost kernel for raphael (Redmi K20 Pro / Mi 9T Pro), Linux 5.4.302.

All three zips are built from commit 0e9e286e2b49 (derp-17). The tag name predates this update.

Kernel Zip Commit
KernelSU-Next v3.4.0-legacy (root) RaphGhost-5.4.302-KSUN-v3.4.0-legacy-0e9e286e2b49-20261001-1357.zip 0e9e286e2b49
No root RaphGhost-5.4.302-NoRoot-0e9e286e2b49-20261001-1402.zip 0e9e286e2b49
KernelSU-Next v3.4.0-legacy + Droidspaces RaphGhost-5.4.302-KSUN-v3.4.0-legacy-Droidspaces-0e9e286e2b49-20261001-1407.zip 0e9e286e2b49

Flash any one zip from recovery (AnyKernel3). It replaces the kernel, dtb and dtbo and keeps the ROM's boot ramdisk. uname -r shows the type and commit, e.g. 5.4.302-RaphGhost-KSUN-0e9e286e2b49.

Root (KSUN zips): use the official KernelSU-Next v3.4.0 manager from https://github.com/KernelSU-Next/KernelSU-Next/releases. If Magisk was ever installed, dirty-flash the ROM zip first to get a clean boot image, then flash the KSUN zip.

Changes since the previous zips (32a274f)

  • KernelSU-Next: fresh installs get root again. Fixes "Failed to grant root! Tap to restart manager process", which needed a manual ksud install before.
    • The manager's own root path works: manager and su-allowed apps can get the driver fd (upstream 005f590).
    • su falls back to sh until ksud is installed, and ksud is tracked live on /data/adb, so it switches back as soon as the manager installs it (no reboot). Upstream: #1564, #1565.
  • KernelSU-Next: synced with upstream legacy (execveat flags fix, selinux_hide fixes, includes cleanup).
  • selinux_hide: the /sys/fs/selinux/context hook is retried after selinuxfs is mounted (it never attached on kprobes builds).
  • The kernel name and zip names now show the plain commit sha (no g prefix).

MD5:

5e04e771a26857f71fe92e203760852d  RaphGhost-5.4.302-KSUN-v3.4.0-legacy-0e9e286e2b49-20261001-1357.zip
6c464901c560e96809cc3be4486c08af  RaphGhost-5.4.302-NoRoot-0e9e286e2b49-20261001-1402.zip
6a1c1f75fd737b53d206725094fdceab  RaphGhost-5.4.302-KSUN-v3.4.0-legacy-Droidspaces-0e9e286e2b49-20261001-1407.zip

RaphGhost-5.4.302-g040fc4f98a98-20260929

Choose a tag to compare

RaphGhost kernel for raphael (Redmi K20 Pro / Mi 9T Pro), Linux 5.4.302.

  • RaphGhost-5.4.302-KSUN-v3.4.0-legacy-g32a274f5c984-20260929-2117.zip - rooted, KernelSU-Next v3.4.0-legacy
  • RaphGhost-5.4.302-NoRoot-g32a274f5c984-20260929-2115.zip - no root
  • RaphGhost-5.4.302-KSUN-v3.4.0-legacy-Droidspaces-g32a274f5c984-20260929-2119.zip - rooted, KernelSU-Next v3.4.0-legacy plus Droidspaces container support

Flash any one zip from recovery (AnyKernel3). It replaces the kernel,
dtb and dtbo and keeps the ROM's boot ramdisk. uname -r shows which
one is installed: -RaphGhost-KSUN-, -RaphGhost-NoRoot- or
-RaphGhost-KSUN-Droidspaces-, followed by the kernel commit.

Root (KSUN zips): use only the official KernelSU-Next v3.4.0 manager from
https://github.com/KernelSU-Next/KernelSU-Next/releases (forks such as SukiSU
or WildKSU and older 1.x managers won't work). If Magisk or another root was
ever installed, dirty-flash the ROM zip first to restore a clean boot image,
then flash the KSUN zip. AnyKernel3 keeps the existing boot ramdisk, so a
Magisk-patched one stays and can cause "Failed to grant root".

Kernel commit: 32a274f5c984 (derp-17). The tag name predates this
update; the zips above are built from 32a274f.

MD5:

4e68b32354b57bf4e0f029d5662ce27c  RaphGhost-5.4.302-KSUN-v3.4.0-legacy-g32a274f5c984-20260929-2117.zip
422890935ff3c78c33ad90c0c7275ff8  RaphGhost-5.4.302-NoRoot-g32a274f5c984-20260929-2115.zip
e5f57dda3f56b847580d997619ffa872  RaphGhost-5.4.302-KSUN-v3.4.0-legacy-Droidspaces-g32a274f5c984-20260929-2119.zip

Changes since 040fc4f:

  • scsi: ufs-qcom: Don't read the FSM state from a failed UIC command's dump (fixes a storage hang)
  • power: qpnp-smb5: Don't log unsupported battery and pc_port properties
  • kernelsu: Log per-process hook and per-exec unmarking decisions at debug level
  • raphael: Build the ROM kernel without KernelSU-Next
  • cgroup: Optionally add prefixed aliases in noprefix hierarchies
  • AnyKernel3: new Droidspaces zip; kernel and zip names now include the variant and commit