intelli/msm_thermal: initial coding for Qualcomm Snapdragon 800 devices

an intelligent MSM thermal throttling kernel driver designed to replace the
closed sourced thermald(aemon) from Qualcomm.

The current driver can throttle the SOC via core frequency scaling or via
core hotplug with user configurable sysfs entries to adjust the throttling
temperature thresholds for each.

Derived from Qualcomm's Open source repo.

Signed-off-by: Paul Reioux <reioux@gmail.com>

Conflicts:

	arch/arm/mach-msm/lge/board-8974-hammerhead.c

Signed-off-by: Paul Reioux <reioux@gmail.com>

Conflicts:
	drivers/thermal/Makefile
Signed-off-by: klozz <xxx.reptar.rawrr.xxx@gmail.com>

Conflicts:
	arch/arm/mach-msm/board-8226.c
	drivers/thermal/Makefile
msm: kgsl: show current power level for 8974 SOCs.

since 8974 uses duplicate frequencies in its table, it's not possible to tell
which of the duplicates is actually in use

Signed-off-by: Paul Reioux <reioux@gmail.com>
Signed-off-by: klozz <xxx.reptar.rawrr.xxx@gmail.com>
board-8226: initialize intelli_thermal engine

Signed-off-by: Paul Reioux <reioux@gmail.com>
Signed-off-by: klozz <xxx.reptar.rawrr.xxx@gmail.com>
intelli-thermal: fix board 8226 merge error

Signed-off-by: Paul Reioux <reioux@gmail.com>
Signed-off-by: klozz <xxx.reptar.rawrr.xxx@gmail.com>
intelli-thermal: use its own dedicated workqueue

this should reduce the load on the shared global workqueue for other
processes and also give its own unique variable name for cpu limit

Signed-off-by: Paul Reioux <reioux@gmail.com>
Signed-off-by: klozz <xxx.reptar.rawrr.xxx@gmail.com>
intelli-thermal: increase sampling time to reduce sampling overhead

Signed-off-by: Paul Reioux <reioux@gmail.com>
Signed-off-by: klozz <xxx.reptar.rawrr.xxx@gmail.com>
drivers/thermal/Kconfig: fix default prompt error

Signed-off-by: Paul Reioux <reioux@gmail.com>
Signed-off-by: klozz <xxx.reptar.rawrr.xxx@gmail.com>
intelli_thermal: compatibility fixup with latest msm_thermal driver

Signed-off-by: Paul Reioux <reioux@gmail.com>
Signed-off-by: klozz <xxx.reptar.rawrr.xxx@gmail.com>
intelli-thermal v2: initial adaptation

Intellithermal 2.0 is based on the latest Qualcomm thermal driver adapted for
in-kernel use and control.  Newer MSM8974+ chipsets should use this driver
going forward

Signed-off-by: Paul Reioux <reioux@gmail.com>
Signed-off-by: klozz <xxx.reptar.rawrr.xxx@gmail.com>

Conflicts:
	drivers/thermal/Makefile
intellithermal v2: adapt for MSM8226 architecture

Signed-off-by: Paul Reioux <reioux@gmail.com>
Signed-off-by: klozz <xxx.reptar.rawrr.xxx@gmail.com>
Intelithermal V2 building fix
disable SCHED_OMIT_FRAME_POINTER
defconfig: disable unneeded stuff
cpufreq: intelliminmax cpu governor baseline commit

intelliminmax (intellimm) governor is designed to work
with the newer SOCs with fixed voltage rails (ie MSM8974+ SOCs).
It is designed to work within those fixed voltage ranges in
order to maximize battery performance while creating a smooth UI
operations.

[neo: Adjust get_cpu_idle_time define to match our gov structure.]
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>

Conflicts:
	drivers/cpufreq/Kconfig
	drivers/cpufreq/Makefile
	include/linux/cpufreq.h
cpufreq: intelliminmax: Tune it further

* Set more freqs
* Cleaned 80 char lines
* Renamed optimal_freq as default ROM MP mod that value to some crap.
no matter what gov
* Split upthresholds

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
intellimm: fully sync w/dorimanx
Tune IntelliMM
CFPUFREQ:fix race condition in store_scaling_governor

Signed-off-by: klozz <xxx.reptar.rawrr.xxx@gmail.com>
f2fs: backport performance improvements

This commit squashes in the following patches as backports:

- f2fs: skip unnecessary data writes during fsync
  https://github.com/torvalds/linux/commit/6d99ba41a72c1213f2029e6fc66aa7943339b5db

- f2fs: skip unnecessary node writes during fsync
  https://github.com/torvalds/linux/commit/479f40c44ae30e02642ce0391be707a53852d545

- f2fs: readahead multi pages of directory for performance
  https://github.com/torvalds/linux/commit/817202d937e6cca7e60f42e6495aaa51d70d9d7e

Signed-off-by: Blechd0se <alex.christ@hotmail.de>
ARM: 8119/1: crypto: sha1: add ARM NEON implementation

This patch adds ARM NEON assembly implementation of SHA-1 algorithm.

tcrypt benchmark results on Cortex-A8, sha1-arm-asm vs sha1-neon-asm:

block-size      bytes/update    old-vs-new
16              16              1.04x
64              16              1.02x
64              64              1.05x
256             16              1.03x
256             64              1.04x
256             256             1.30x
1024            16              1.03x
1024            256             1.36x
1024            1024            1.52x
2048            16              1.03x
2048            256             1.39x
2048            1024            1.55x
2048            2048            1.59x
4096            16              1.03x
4096            256             1.40x
4096            1024            1.57x
4096            4096            1.62x
8192            16              1.03x
8192            256             1.40x
8192            1024            1.58x
8192            4096            1.63x
8192            8192            1.63x

Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Jussi Kivilinna <jussi.kivilinna@iki.fi>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>