• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!
  • Fill out your device list and let everyone know which phones you have!    Edit Your Device Inventory

[KERNEL][ONC] Garuda Project [AOSP][MIUI]

Search This thread


Senior Member
Jun 18, 2017
Xiaomi Redmi 7

#include <std_disclaimer.h>
 * Your warranty is now void.
 * I am not responsible for bricked devices, dead SD cards,
 * thermonuclear war, or you getting fired because the alarm app failed. Please
 * do some research if you have any concerns about features included in this ROM
 * before flashing it! You are choosing to make these modifications, and if
 * you point the finger at me for messing up your device, I will laugh at you.
 * For who wants to put to any other mobile phone, please put the credit on the above. please help.

Introducing the Garuda Project kernel specifically for AOSP (Android Open Source Project) and MIUI based ROMs. This is second project for the Redmi 7/Y3 development.

Linux Stable | Latest CAF tag | Latest WLAN Driver CAF tag | Latest Audio Driver CAF tag
Linux Version: 4.9.241 • CAF Tag: LA.UM.9.6.2.r1-02500-89xx.0​

  • Boot into custom recovery
  • Backup stock boot & dtbo
  • Flash Garuda Project
  • Reboot

  • Core Control
  • Voltage Control
  • CPU Sets & Stune Boost
  • CPU Input Boost
  • CAF CPU Boost
  • GPU Control
  • Adreno Idler

CPU Governor
  • Conservative (built-in)
  • Ondemand (built-in)
  • Userspace (built-in)
  • Powersave (built-in)
  • Energy DCFC
  • Blu Schedutil
  • Pixel Smurfutil
  • Smurfutil Flex
  • Smurfutil
  • Electroutil
  • Helix Schedutil
  • Pixutil
  • Performance (built-in)
  • Schedutil (default)

GPU Governor
  • msm-adreno-tz (built-in & default)
  • CPUFreq (built-in)
  • Userspace (built-in)
  • Powersave (built-in)
  • Performance (built-in)
  • Simple Ondemand (built-in)

I/O Scheduler
  • Noop (built-in)
  • CFQ (built-in)
  • Maple
  • Anxiety (default)
  • Tripndroid
  • BFQ
  • Zen
  • Fiops
  • Sio

File System
  • EXT4
  • F2FS
  • sdFAT
  • exFAT
  • NTFS

Compression Algorithm
  • LZO (built-in)
  • Deflate (built-in)
  • LZ4 (default & persistent)
  • LZ4HC
  • 842
  • ZSTD

Audio Post-Processing
  • Sound Control
    - Headphone Gain
    - Microphone Gain
    - Speaker Gain
  • Ainur DTS Software

Display Post-Processing
  • KCAL
  • K-Lapse 5.0

TCP Algorithm
  • BBR (default)
  • CUBIC (built-in)
  • RENO (built-in)
  • BIC
  • CDG
  • HTCP
  • NV
  • LP

  • Auto Cut Charging
  • Fingerprint Boost
  • Fast Charging
  • USB HID Support
  • Power Suspend
  • Boeffla WL Blocker
  • WireGuard
  • CRC ON/OFF Toggle
  • Fsync ON/OFF Toggle
  • Energy Model
  • vDSO
  • Devfreq Boost
  • DriveDroid Support
  • Dynamic SchedTune
  • State Notifier
  • Frandom RNG

You can see commits in the sources for completely changelogs.


Kernel based on Q source released by Xiaomi a few months ago.

I want to give credit to other developers whose commits I'v picked up. However, because there are so many, you can see them in the kernel source.

And, here I will give special credit to the developers who contribute to this community, see the contributors section.

XDA:DevDB Information
Garuda Project, Kernel for the Xiaomi Redmi 7

TheSync, @rama982, @mylove90, @Revanth_24, @Dhina_17, @imjyotiraditya
Source Code: https://github.com/TheSync/android_kernel_xiaomi_onc

Version Information
Status: Stable

Created 2020-10-28
Last Updated 2020-10-28
Last edited:


Senior Member
Jun 18, 2017
Xiaomi Redmi 7
PS: Due effect of different CAF tag, MIUI Android 9.0 will have a warning when entering the first homescreen. Ignore that.
On MIUI Port Android 10 is fine.
And LZ4 is set as persistent, you can't change algorithm for now.
Last edited:


Senior Member
Jun 18, 2017
Xiaomi Redmi 7
New Build is up!

* Upstreamed to Linux 4.9.241
* msm: ipa3: Ratelimit the error logs for pkts with invalid status
* kernel: Don't allow IRQ affinity masks to have more than one CPU
* msm: mdss: Speed up mdss_mdp_get_format_params for UBWC formats
* mutex: Don't hog RCU read lock while optimistically spinning
* arm64: add ARM64-specific support for flatmem
* crypto: Make CRYPTO_DEV_QCE depend on CRYPTO_DEV_QCRYPTO being disabled
* firmware: qcom: Remove debugfs dependency from tz-log driver
* wakeup: Enable debugfs usage for Android even when debugfs is disabled
* netfilter: Added support for TTL fixation
* thermal: qpnp-adc-tm: Remove workqueue high-priority flag
* usb: policy_engine: Remove workqueue high-priority flag
* pwm: qpnp-pwm: add api for synchronous enable of pwms
* dmaengine: Fix memory leak in dma_async_device_register
* media: v4l2-ioctl: Use a larger on-stack video copy buffer
* net/sched: silence "quantum of class is big" log warning
* qpnp-smb2: Silence dmesg spam while charging 'Set prop 16 is not supported in pc_port
* msm: kgsl: Report correct GPU frequency for clock_mhz
* zRAM: Allow change compression algorithm
* kcal: sde_hw: color proc v4: add RGB bias
* drm: msm: kcal: export rgb to userspace and clean it up
* drm: msm: kcal: hue, saturation, value and contrast adjustments
* drm: msm: kcal: make the userspace module param vars static and use short instead of integers

PS: Just ignore missmatch message at homescreen (MIUI Android 9.0). --> If there
MIUI Port/GSI Android 10 fine.