Makefile: adding config variable for Os/O2/O3 compilation

Conflicts:

	init/Kconfig
Makefile: Added Snapdragon optimizations

Conflicts:

	Makefile
Makefile: Optimizing build-options for linaro
Update defconfig to use -O3 Optimization

Signed-off-by: Paul Keith <javelinanddart@gmail.com>
SCHEDULER: Autogroup patch group by current user android UID instead of task ID
vfp: compile with neon

Conflicts:

	arch/arm/vfp/Makefile
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.

Signed-off-by: Miao Xie <miaox*******>

Conflicts:

	lib/Makefile
lib/string: use glibc version

the performance of memcpy and memmove of the general version is very
inefficient, this patch improved them.

Signed-off-by: Miao Xie <miaox*******>

Conflicts:

	lib/string.c
Optimized ARM RWSEM algorithm

RWSEM implementation for ARM using atomic functions.
Heavily based on arch/sh/include/asm/rwsem.h

Signed-off-by: Ashwin Chaugule <ashwinc@codeaurora.org>
Choose XZ Compression and Update configs

Signed-off-by: Paul Keith <javelinanddart@gmail.com>
acpu: export krait variant to debugfs

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>
Signed-off-by: Paul Keith <javelinanddart@gmail.com>
acpu: update krait variant export to include chip version

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>
makefile: vectorize for quadword registers
GCC does not support vectorization with varying vector sizes.
By default, it vectorizes for doubleword registers only.

Conflicts:

	Makefile
arch/arm/Makefile: Enable pipe compiling

-pipe

Use pipes rather than temporary files for communication between the various stages of
compilation. This fails to work on some systems where the assembler is unable to read
from a pipe; but the GNU assembler has no trouble.
thermal: Don't limit CPU frequency after msm_thermal is disabled

There may be an outstanding task to check for threshold crossing
when msm_thermal is disabled and CPU is restored to maximum
frequency. This task can get scheduled after the maximum frequency
is restored, and result in another mitigation that pins CPU
frequencies to 918mHz. This happens in the case that the final
temperature was still above the max temperature threshold.
This patch ensures any outstanding tasks are cancelled and flushed
before finally restoring the CPU frequencies.

CRs-fixed: 351614
Change-Id: Ifce00b379989b78856803ac09c7403207f5c998b
Signed-off-by: Eugene Seah <eseah@codeaurora.org>
drivers/thermal: Add 3-phase in kernel thermal management

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>
Signed-off-by: Paul Keith <javelinanddart@gmail.com>
mach-msm: Add msm_mpdecision Kconfig & Makefile hooks

Signed-off-by: showp1984 <showp1984@gmail.com>

Conflicts:

	arch/arm/mach-msm/Kconfig
mach-msm: Add msm_mpdecision

This currently only does the following thing:
Screen on -> CPU1 online
Screen off -> CPU1 offline

More to come.

Signed-off-by: showp1984 <showp1984@gmail.com>
mach-msm: mpdecision: small cleanup

Signed-off-by: showp1984 <showp1984@gmail.com>
mach-msm: update msm_rq_stats

Signed-off-by: Dennis Rassmann <showp1984@gmail.com>
Signed-off-by: Paul Keith <javelinanddart@gmail.com>