[Motorola Atrix 2] dtrail1:
/// JellyBeanX-kernel ///

​

READ THIS: I added almost all important topics which have been discussed around the kernel thread to the OP and wrote this FAQ just that you guys don't have to browse through 100+ pages of the thread. READ BEFORE YOU ASK and HELP TO KEEP THIS THREAD MORE CLEAN! BUT ALSO BETTER ASK ONCE MORE BEFORE YOU MESS UP YOUR PHONE! :D If you find something missing in this OP/FAQ, please PM me and I will add it. Thank you!

You can find the FAQ at the bottom of this post!

This is a direct port of my RAZR-JBX-Kernel Hybrid for Motorola Razr!

This kernel is built of the Kexec Project which was initiated first by Kholk & [mbm] and finished by the STS-Dev-Team (Hashcode, Dhacker). Using this kernel will provide addtional features to your ATRIX 2.

LATEST CHANGES (for latest release and NIGHTLIES)

--> DETAILED CHANGELOG JBX-kernel Hybrid <--

Kernel Guide by Placca 1.8!!

Check the FAQ section at the bottom of this post to download it! It will make many things easier for you and help you to understand the kernel and its features!

FEATURES

JBX-Kernel Hybrid

Battery Friend toggle (a battery friendly mode)

Intelli-Plug (Kernel side replacement for msm MPDecisions) by Faux123 + patches by me (no hotplugging when screen is ON)

Dynamic Hotplug: Second core will be turned off ONLY while screen is off - independent from selected governor. (Not needed when using Intelli-Plug)

Optimized OPP Table for smooth CPU scaling

Frequencies: 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300

Modifed Smartreflex driver (Custom Sensor for detecting n-Value).

Smartreflex Tuning Interface: Set min/max calibrated voltage

Overclocking using Live OC (mine runs stable at a maximum frequency of 1,498ghz!)

hwmod, uart, IRQs - cleanups from pre-kexec config to safe power

CPU: lower voltages for CORE and IVA. Give CORE the abbility to scale up to higher voltage if needed

Added IVA_NITROSB

Dynamic fsync control: FSYNC interval is dynamic depending on screen state (SCREEN OFF: synchronous, SCREEN ON: asynchronous)

HTC's Asynchronous Fsync port - read explanation below*

Dynamic page-writeback: Page writeback interval is dynamic depending on screen state.

Frandom v2

JRCU / Tiny RCU (currently JRCU in use)

Raised voltage limits for mpu a bit

Raised the temperature limits from 64c* to 74c* (degrees)

optimized CRC32 algorithm (better code generation)

RW Readahead dynamically depending on storage device (automatic detection of the best value)

zRAM support

GPU has 4 scaling steps and OC to 384mhz (Base freq: 102 mhz --> 154 mhz, 307 mhz, 384 mhz)

GPU C4 states / GPU Control (Governors, Frequencies)

Multicore Power Saving Mode Control

ARCH Dependant Power feature

Gamma Control

Front Buffer Delay Control (draw in x msecs on early suspend)

Screen/Display: Modified OMAPDSS for sharpness and lightning colors

OMAPDSS: Added variable clock rate and OPP - allows the screen to scale down power and voltage

lowmemkiller: Heavy modified for R/W Speed and efficient performance

ZCACHE, ZSMALLOC, XVMALLOC backported from 3.4, 3.7 and 3.10 (ZCACHE currently not in use)

Custom Voltage Support

IO-Schedulers: SIOPlus, Fifo, Row, VR, Noop, Deadline, CFQ, BFQ

ROW Scheduler is heavily tweaked to be the fastest scheduler ever!

CPU: More Governors

Deep Idle

ARM Topology

Many improvements in overall OMAP PM

SELinux permissive

GREAT performance!

battery life!

Support for Trickster Mod Kernel Control App (Download from Gplay)

*]Too much stuff to list here. See "Sources" below and check my Github

* HTC's Asynchronous Fsync and Dynamic Fsync:

Asynchronous fsync (called "afsync" or "async fsync") from HTC is ported into this kernel. By default it's enabled and dynamic fsync is disabled (and as well it isn't needed anymore).

The dynamic fsync toggle in Trickster Mod is now serving both functions - the dynamic fsync AND the asynchronous fsync! How? By default Dynamic Fsync is disabled, and Afsync is enabled. If you now enable Dynamic fsync using the toggle, Afsync will be automatically disabled, so both functions are not conflicting each other - and this way we have a working toggle for both of them.

REQUIREMENTS

Rooted device

Must use a Kexec Rom (CM, AOKP, AOSP)

Recovery (BMM, SS)

REMOVE any kernel modules you used before

DEACTIVATE ANY CPU tweaks, onboot settings etc otherwise your phone may not boot!

CAUTION: The kernel needs a clean setup related to CPU tweaks / Settings, etc...Keep your device as clean as possible regarding to Tweaks, CPU special settings, etc. The Kernel brings its own CPU settings and after you can boot it succesfully, you can set it like you want!

Some roms may use CPU tweaks. This can cause issues like reboots and freezes. Check the init.d folder for any CPU related stuff and Kernel modules - then remove it. E.g. Remove any scripts which include "insmod" commands.

The best setting is to have stock CPU settings set

This kernel may not work on all roms! Check and report.

TO DO LIST

- Fix bugs

- Fix compile warnings

- More features.

INSTRUCTIONS

NOTE: CLICK here for a detailled Installation Guide (about the Aroma Installer, the features to select and more)

Download zip file from below

Reboot into recovery

Flash the kernel (BMM users: DON'T use the "Flash Kernel" Option! This is a usual zip file!)

Reboot

Download Trickster Mod App from Gplay! Read the FAQ to learn about playing with kernel features!

Enjoy!

EMERGENCY RESTORE

If you have tried a Nightly build and you phone is acting crazy, you can follow these steps:

Check the thread or ask for the latest stable kernel build

NO WIPES!

Flash the Rom (Yes, again! That one you're currently using.)

Flash Gapps

Flash Kernel

Reboot