FORUMS
Remove All Ads from XDA

[KERNEL][CM BASED] Falcon Kernel 1.3 [OC to 2.5][32GB 2.15GHz]

329 posts
Thanks Meter: 552
 
By Harrynowl, Senior Member on 17th October 2016, 08:36 PM
Thread Closed Email Thread
Introduction
Quote:

Falcon Kernel is a project of mine to bring improvements to the Mi 5 from Xiaomi, but without overloading it with buzzwords and bloat.

PLEASE KEEP DISCUSSION OF THIS KERNEL/RELATED QUESTIONS (E.G. CAN YOU/DOES IT SUPPORT X KERNEL) OUT OF THE OFFICIAL CM13 THREAD

Standard disclaimer
Quote:

#include
/*
* 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.
*/

Installation instructions
Quote:

This Kernel is for all Mi5 devices AKA "gemini" including 64GB, 128GB.

This is built using the CyanogenMod 13 kernel source as base,
1.4.1 and below is only compatible with ROMs built with the MIUI7.x firmware blobs
2.0 and up are built using the new kernel base and are compatible with MIUI8.x firmware blobs (CM13 11/12 nightly+)

Flash via TWRP recovery

Features
Quote:

- ZEN, FIOPS, SIO I/O governor
- blu_active CPU governor
- Increased charging speed
- Dynamic fsync 2.0
- fsync on/off toggle
- KCAL screen colour control
- Vibration motor control
- Improved boot time
- Cache & swap improvements for Mi5
- Touchboost control
- msm8996 lite/32GB @ 2.15GHz/1.59GHz frequency unlock
- ARM big up to 2.5GHz
- ARM LITTLE up to 1.86GHz

Bugs
Quote:

Bugs present in current CM kernel
-Ambient display (resolved in 1.2.1 - thanks @bgcngm)
-Extremely low performance when below 5% battery - ("fixed" in 1.3.2 by disabling BCL driver, see changelog)

When reporting a bug. Please provide a logcat+dmesg. If reporting a crash, a last kmesg

Download link
Quote:


Legacy Kernel for MIUI7.x Firmware blobs:

Release: 1.4.1

Changelog:


- Reverse aggressive UV pending more testing
- Add overclocking frequencies up to 2.5GHz (big)/1.86GHz (LITTLE)
- Fix voltage tables not working properly (causing crashes on 1.4)


Android 6.0.1:

Release: 2.0


Changelog:

- Updated for new kernel base
- Features found on previous releases
- 32GB GPU @ 624MHz
- No 32GB CPU OC for now due to changes breaking compatibility



Android 7.1:

Release: 1.0

Changelog:

- Updated for new kernel base
- Initial release for Nougat
- Features found on 6.0.1 releases
- 32GB GPU @ 624MHz
- No 32GB CPU OC for now due to changes breaking compatibility

Credits
Quote:

bgcngm, h2o64 and defer for their work on the msm8996 kernel base for our device

XDA:DevDB Information
Falcon Kernel, Kernel for the Xiaomi Mi 5

Contributors
Harrynowl, bgcngm, CyanogenMod, flar2, eng.stk, franco, faux123, h2o64
Source Code: https://github.com/harrynowl/falconkernel-gemini

Kernel Special Features:

Version Information
Status: Beta
Current Beta Version: 2.0
Beta Release Date: 2016-12-06

Created 2016-10-17
Last Updated 2016-12-06
Attached Thumbnails
Click image for larger version

Name:	tFIepEi.png
Views:	20138
Size:	207.1 KB
ID:	3906808   Click image for larger version

Name:	89C4fjQ.png
Views:	19844
Size:	205.8 KB
ID:	3906809  
The Following 46 Users Say Thank You to Harrynowl For This Useful Post: [ View ] Gift Harrynowl Ad-Free
 
 
17th October 2016, 08:36 PM |#2  
Harrynowl's Avatar
OP Senior Member
Thanks Meter: 552
 
Donate to Me
More
Reserved
Building Falcon Kernel

If you'd like to build Falcon Kernel for yourself you can do so very easily.

You will need a Linux build environment setup. I won't include this but you can read Google's instructions here.

Getting the source

Visit Falcon Kernel kit repo over at: https://github.com/harrynowl/falcon_gemini_2.0

Create a fork of this repository that you can maintain for yourself by pressing the fork button towards the top right.

Now you will need to create a local copy of Falcon Kernel on your build environment. On github click the green clone button to get the clone URL.

Open the terminal and type:

git clone <clone url> -b <branch> <dir>
e.g.

Code:
git clone https://github.com/harrynowl/falcon_gemini_2.0.git -b Nougat mykernel
Now cd into the directory you just cloned the kernel into

Code:
cd mykernel
Building the kernel

Falcon Kernel source code contains two fairly basic scripts to download the toolchain and also run a build.

Start by typing

Code:
./toolchain.sh
When that is done, I'd suggest running through a build to make sure everything is OK.

Code:
./build.sh
Changing the kernel

You can start by changing the Kernel name. Navigate to falcon_gemini_defconfig in arch/arm64/configs and change CONFIG_LOCALVERSION="<name>" to whatever you would like to call the Kernel.

You can now look through other kernel commits and see features you want, and cherry pick their changes.

You can update your changes to github by commiting with git commit and then git push.

This isn't the be-all and end-all of Kernel building, but it's a start.
The Following 6 Users Say Thank You to Harrynowl For This Useful Post: [ View ] Gift Harrynowl Ad-Free
17th October 2016, 09:00 PM |#3  
Senior Member
Flag Bangalore
Thanks Meter: 1,605
 
More
#There You Go
The Following User Says Thank You to WhyOrean For This Useful Post: [ View ] Gift WhyOrean Ad-Free
17th October 2016, 09:02 PM |#4  
Fortinho's Avatar
Senior Member
Thanks Meter: 85
 
More
Quote:
Originally Posted by Harrynowl

[...]

I'm sorry, I'm not going to use this because I own a 64GB Mi 5, but I didn't understand one thing: this kernel is compatible with?
  • CM13 with prebuilt kernel
  • CM13 with new kernel
  • ?
Thank you!
17th October 2016, 09:06 PM |#5  
Senior Member
Flag Bangalore
Thanks Meter: 1,605
 
More
Quote:
Originally Posted by Fortinho

I'm sorry, I'm not going to use this because I own a 64GB Mi 5, but I didn't understand one thing: this kernel is compatible with?

  • CM13 with prebuilt kernel
  • CM13 with new kernel
  • ?
Thank you!

1. CM with new kernel - OK
2. CM with prebuilt kernel - Not Checked
3. AOSP - Not Booting
The Following User Says Thank You to WhyOrean For This Useful Post: [ View ] Gift WhyOrean Ad-Free
17th October 2016, 09:07 PM |#6  
Harrynowl's Avatar
OP Senior Member
Thanks Meter: 552
 
Donate to Me
More
Quote:
Originally Posted by Fortinho

<snip>

This kernel is only compatible with CM13 builds running the MIUI7.x firmware blobs.
The Following 2 Users Say Thank You to Harrynowl For This Useful Post: [ View ] Gift Harrynowl Ad-Free
17th October 2016, 09:10 PM |#7  
Fortinho's Avatar
Senior Member
Thanks Meter: 85
 
More
Quote:
Originally Posted by WhyOrean

1. CM with new kernel - OK
2. CM with prebuilt kernel - Not Checked
3. AOSP - Not Booting

Quote:
Originally Posted by Harrynowl

This kernel is only compatible with AOSP builds running the MIUI7.x firmware blobs.

Your replies made the thing pretty unclear

EDIT: I get it, you mean CM builds with MIUI 7.x firmware blobs are the newest CMs with the "custom kernel".
Thank you both.
17th October 2016, 09:14 PM |#8  
Harrynowl's Avatar
OP Senior Member
Thanks Meter: 552
 
Donate to Me
More
Quote:
Originally Posted by Fortinho

Your replies made the thing pretty unclear

See my edit, added this info to OP. Confused myself also with 2 people answering
17th October 2016, 09:16 PM |#9  
woonaval's Avatar
Senior Member
Thanks Meter: 82
 
More
I installed it on AICP and I got a bootloop. I guess it's only compatible with CyanogenMOD 13 for the moment, and not other ROMs based in cm?

Thanks!
17th October 2016, 09:17 PM |#10  
Senior Member
Flag Bangalore
Thanks Meter: 1,605
 
More
Quote:
Originally Posted by Harrynowl

See my edit, added this info to OP. Confused myself also with 2 people answering

hahaha...
The Following User Says Thank You to WhyOrean For This Useful Post: [ View ] Gift WhyOrean Ad-Free
17th October 2016, 09:21 PM |#11  
Senior Member
Flag Basel
Thanks Meter: 1,970
 
Donate to Me
More
Quote:
Originally Posted by woonaval

I installed it on AICP and I got a bootloop. I guess it's only compatible with CyanogenMOD 13 for the moment, and not other ROMs based in cm?

Thanks!

AICP uses a different Ramdisk than this kernel has, so it wont boot.
This will be the same with DU and AOSP.
The Following 2 Users Say Thank You to 33bca For This Useful Post: [ View ] Gift 33bca Ad-Free
Thread Closed Subscribe to Thread

Tags
32gb, cm13, kernel, unlock
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes