Added Battery Life eXtender (BLX) version 1 (Credits to Ezeekel)
Adapted by Christopher83 for I9001 and I8150 devices
- If the BLX charging limit is 100%, then the battery is fully charged as if the feature is not active
- Wait some seconds after reaching the charging limit before stop the charging
Fix compatibility with linaro toolchain
Added NEON compilation flag to VFP module
Increased cpu frequency on boot
Tuned Lulzactive governor for better battery saving
Added high memory and very high memory support
Added CPU Voltage Control (VDD sysfs interface)
Thanks to Doomlord
Lowered WIFI voltage (Thanks to CastagnaIT)
Lowered display panel voltage (Thanks to CastagnaIT)
Lowered swappiness 60->45
Added custom configs
100% battery notification after charger unplug
Increased audio volume on board side
Optimized SLUB memory allocator
Some changes to msm7x30_init_mmc for debugging
Optimized ARM RWSEM algorithm

RWSEM implementation for ARM using atomic functions.
Heavily based on arch/sh/include/asm/rwsem.h
lib/memcopy: use glibc version

the kernel's memcpy and memmove is very inefficient. But the glibc version is
quite fast, in some cases it is 10 times faster than the kernel version. So I
introduce some memory copy macros and functions of the glibc to improve the
kernel version's performance.

The strategy of the memory functions is:
1. Copy bytes until the destination pointer is aligned.
2. Copy words in unrolled loops.  If the source and destination are not
   aligned in the same way, use word memory operations, but shift and merge
   two read words before writing.
3. Copy the few remaining bytes.
lib/string: use glibc version

the performance of memcpy and memmove of the general version is very
inefficient, this patch improved them.
Added fylesystem dynamic read-ahead
Thanks to Chad Gooldman
Added Fast Random generator support (frandom)
Frandom is a Linux kernel random number generator, which is 10-50
times faster than what you get from Linux' built-in /dev/urandom.
And it uses very little (/dev/frandom) or none (/dev/erandom) of
the kernel's entropy pool, so it is very useful for applications
that require a handy source for lots of random data.