[Sony Xperia M] thichthat:
Hi everyone! After a couple of days working on ubuntu, I have built my own kernel

If you enjoy my work, please buy me a coffee. Thanks: http://nui.pe.hu/donate.html

Download here: https://play.google.com/store/apps/details?id=com.nui.kernel

I AM A STUDENT, NOT A DEVELOPER. I CANNOT FIX ALL ERRORS. SO PLEASE DON'T GIVE MY APP 1 OR 2 STARS.

FAQs

I can't flash zip file!

You must install TWRP. It doesn't work with CM recovery

My phone gets bootloop. What can I do?

You can use fastboot to flash stock kernel. Or just easily re-flash ROM.

This kernel makes my phone runs slow!

I can't help you. It works fine for me. I use CM's source code and I just add some feature.

Can you add/remove/fix blah blah feature?

OK. I'll try. But first I must do my homework. I'm a student, not a developer :(

Do I need to move data from internal storage to sdcard before disabling it ?

Yes. But if you forgot, don't worry. All your data is still in /data/media/0

See post #2 for more infomation

Changelog:

V6.1

Update FAQs

Update built-in TWRP to 3.0.0 (thanks to cucumber09)

Enable pressure report for touch screen (may not accurate)

Fix delay for guide on boot logo

Sync with newest CM13 kernel source.

V6.0

Re-enable F2FS

Use uncompressed main ramdisk (only gzip TWRP ramdisk)

Sync with CM13 kernel source

Underclock to 192MHz (may increase standby time)

Optimize voltage value for CPU

Increase CPU bus speed

Fix/update extract_elf_ramdisk (thanks to cucumber09)

V5.9

Add fade animation for flash torch on/off (in Tweaks > More)

Fix recording video error

Sync with CyanogenMod kernel source

App: fix FC in screen/brightness settings

V5.8

Add an awesome fade animation for LED notification

Sync with Ron's CM13 kernel source

App: Remove options for KSM and brightness lock

V5.7

Fix some FCs in the app

Disable KSM for fixing random reboot

Update disable internal storage for android 6.0+

Option for offline charging (Tweaks > Boot options)

V5.6

Add loading recovery.cpio from /cache

Add tips in FAQ menu

Add KSM support (Tweaks > RAM tweaks)

Follow Google's guidelines for Low RAM devices

Disable offline charging by default

Edge gesture: Custom action for menu gesture, increase its sensitive

Always enable dt2w/s2w vibration

V5.5

Add earpiece volume gain

Support camera button on selfie stick (in Tweaks > Buttons)

Fix swipe to control music

Fix FM radio

V5.4

Kernel:

Full support for android 6.0 marshmallow

Optimize sensor drivers (gravity, light and compass driver)

Press volume up/down to answer/decline incoming call

Fix swipe to control music

Fix speaker gain being overwritten randomly

App:

Fix sound settings can't be restored on boot

V5.3

Fix Edge gesture

Add function to Backup/Restore settings.

New "Edge gesture" function (see more in Tweak menu)

Add volume control from kernel level (for mic, speaker and headset)

Many optimizations for touch screen driver

Add tweaks for camera

Button: add "recent" button action

App: Rearrange tweaks menu

V5.2

Kernel:

GCC 5.2.0

Removed kexec hard-boot (it's broken and I can't fix)

Tweaked low memory killer module

Workaround for mobile data issue

App:

Allow opening tweak menu without updating to newest version

Rearrange some settings in "More" section in tweak menu

Add tweaks for Android side

V5.1

Now use GCC 5.1.0

Add Croatia translation (Thanks to Petar Cerin)

Improve/fix installer script (compatible with more ROMs)

Improvements for touch screen driver and dt2w/s2w:

+ Optimize code (save CPU cycles)

+ Fix screen freeze issue (for dt2w/s2w)

+ Removed debug code

Workaround for init.d

Disable mpdecision by default

V5.0

FIX SYSTEMUI FCS (tested on Archidroid)

Add Hindi translation (thanks to Garv Maggu)

Fix shortcuts on home screen

Remove many unused built-in drivers (IR control, PS2 mouse, TV tuner,...)

Add interactive GPU governor

Enable H264 High profile codec (Experimental)

Remove debug messages in wlan and LED driver (speed up a bit)

LED blinking for boot decision (can be disabled in tweaks menu)

V4.9

Add Vietnamese translation (thanks to Tuan Loc)

Fix some English grammar error (thanks to Garv Maggu)

Add more shortcut for home screen

Fix mobile signal/SIM card for CM11 (Thanks to PecanCM)

New method to choose boot type

No delay after choosing Recovery boot

Add HYPER cpu governor

"Very dim" brightness now a bit dimmer

Prevent audio glitches for music playback (experimental, enable in accessibility service)

V4.8

Add kexec/MultiROM support (read post #2)

Add swipe to control music playback on screen off

V4.7

Governors: remove NUIOndemand, add intellidemand

Fix forever deep sleep on dt2w/s2w

Add GPU Control

Add CPU control and power menu shortcuts for launcher

V4.6

Built-in No-frills CPU Control (thanks to Sineo)

Add option to control Dynamic Fsync (disabled by default)

SELinux set to default (Enforcing)

Add overclock levels

V4.5

Downgrade to GCC 4.9.3 (to fix dt2w/s2w and some problems with ril)

Add intellimm governor

Set noatime for all partitions (I/O boost)

Fix disable internal storage mod for dual SIM (check post #2 on xda)

Remove automatic install method (we only have to flash ONE zip)

Improve algorithm in tweaks menu

V4.4

Fix touch screen freezing cause by dt2w/s2w

Option to force brightness to a specific value

Improve algorithm in tweaks menu

V4.3

GCC toolchain 4.9.4 linaro

Auto check for update when app is opened

Add swipe to wake (still for testing, sometimes need to swipe twice)

Merge new changes from CM (Except removing logger)

SElinux set to permissive by default

Add some help messages in tweak menu

Add MD5 checker for installer

V4.2

Tweaks for camera and focus button when screen is off

Add zen io scheduler

Update TWRP to 2.8.7.0

Option to change:

+ Sensitive of proximity sensor

+ Intensity of torch LED

+ Disable FOTA recovery

Improve dt2w:

+ Fix forever deep sleep bug (Need to test more)

+ Disable on screen edge (to prevent sliding from edge)

+ Fix some accidentally tapping case

V4.1

Add tweaks for camera and focus button

Add guide text on boot (can be disabled in tweaks menu)

Fix dt2w issue when calling

V4.0

Fix some settings cannot be saved

Fix headset volume button (in kernel level)

Add fiops io scheduler

Built-in frandom (Fast pseudo-random generator)

V3.9

Fix Settings menu can't show correct value

Add option for overclock, disable by default.

Add vibration for dt2w

Add lulzactive governor

Add fifo, tripndroid io scheduler

Hold volume up and press focus key to force reduce brightness (useful when you get "Android is upgrading" for a long time)

Update FAQs

Fix all FCs in Settings

V3.8

Fix lag when CPU goes above 1GHz. You phone will be very smooth.

Re-enable mpdecision (fix problem with sdcard)

Improve double tap to wake:

+ Fix battery drain

+ Add half screen mode

+ Add setting

+ Now can work in deep sleep but sometimes need to tap 4 times

V3.7

Fix sdcard not mounting on some ROMs

Fix Settings menu

Add manually install method

Fix/update NUIondemand

Fix all problem with zip method

Disable normal install method

Clean source code and toolchain (may fix problem with mounting sdcard and random reboot)

V3.6

Option to on/off vibration on boot decision

Fix FC in settings

Add NUIondemand governor (still for testing, read FAQs)

Re-built all kernel object files (may fix problem with mounting sdcard)

V3.5

Add custom vibration intensity for haptic feedback

Re-add CM11 support

Add init.d support

Added installer via zip method

Fixed FC in settings

Add FAQs

Fix install algorithm

Add more information for reporting

V3.4

Remove support for CM11

Add kernel tweaks

Revert adjusting microphone volume

Mount system rw at boot

V3.3

Disable mpdecision by default

Revert using focus button as camera button

Add exFAT and f2fs file system

V3.2

Fix bootloop for update on devices using Disable Internal Storage mod

Optimize init.sh script

Reduce brightness when booting (Save battery)

Built-in undervolt script (set on every boot)

Add Lionheart governor

Add sioplus iosched

Increase microphone volume

V3.1

Fix apk file not recognize Xperia M dual

Fix camera button not working on all CM roms (Open camera app and try it yourself!)

Add sio iosched

Add SmartassV2 governor (UNSTABLE, I need developers to help me)

Merge newest commits from CM

V3.0

Stock boot logo

Build with GCC 4.9.3 linaro

New way to install (via apk file)

New way to reboot: press and hold power button for 8 secs

Re-enable FOTA recovery (read post #2)

Re-enable Dynamic FSync 2.0

Sync with CM's source code

V2.5

Based on CM12.1 branch from CM's source code

New funny boot logo!

Fixed beeeeeeeeeeeep noise when recording audio

Disable intelli plug (to control individual cores)

New boot script (add vibrations for boot decision)

Add 2ndrom function (still for testing)

Add new method for disabling internal storage

V2.0

Use SXD's source code (from here: https://github.com/NoelMacwan/SXDNickiLolly/ )

GCC 4.8

Overclock to 1.7GHz

Fixed dt2w (EXPERIMENTAL, MAY CAUSE BATTERY DRAIN)

Add intelli_plug, fsync, fstrim,...

intelli_plug tweak

Add support for CM12.1

V1.1:

Build with gcc tool 4.8.5 (thanks to @shrisangram )

Add doubletap2wake function (Worked but not stable!)

Disable mpdecision by default

Read ahead cache size to from 128KB to 2048KB

V1.0:

Stock boot logo

Overclocked to 1.6GHz (thanks to @FindYanot )

Added volt control and undervolt (thanks to @icoolguy1995 )

reduced min brightness level

Added TWRP 2.8.3.0 (with MTP support)

Added support for patch.cpio (for cm11 kernel patch)

When boot, blue led for boot decision and white led for TWRP (this is not an extra feature. I added it to test my codes)

Build with gcc tool 4.7 (Sorry, I have problems compiling with 4.8 and 4.9)

XDA:DevDB Information

[Android 4.4+] [KERNEL] [OC] Nui kernel for CM ROMs, Kernel for the Sony Xperia M

Contributors

thichthat, Garv Maggu, ndrancs

Source Code: https://github.com/ngxson/android_kernel_sony_msm8x27

Kernel Special Features:

Version Information

Status: Stable

Stable Release Date: 2015-06-08

Created 2015-03-30

Last Updated 2016-02-15