input: touchscreen: Tired of fucking wit dis shit

Conflicts:
	drivers/input/touchscreen/lge_touch_core.c
Revert "ARM: (Experimental) Provide Estimated CPU Capacity measure"

This reverts commit 034a75a4d855e2dcfec73f10346ea4ae289c40c6.
sched: sick of this crap also
Revert "overall_stats: forward port to kernel 3.4+"

This reverts commit 56aa6901c3e38fc303d7ba597b6f7eb7fc785161.
Revert "overall_stats: make dual/quad core stats configurable via meunconfig"

This reverts commit 0b96fcc54f169a9bd07107fa3f874fd0d400a794.
Revert "overall_stats: add overall stats for all available cores"

This reverts commit 06d9fa5dadb7cfef9285299e5da3bc7ae259958c.
Revert "sched: Scale load contribution by CPU Capacity"

This reverts commit d7dfbc82c925163dd0e5beb1894d9343cf5f1780.
Revert "sched: introduce compute capacity for CPUs, groups and domains"

This reverts commit 1f22af9cda531df7392df20c57813e63531af24c.

Conflicts:
	kernel/sched/fair.c
usb: otg: Fix? for compiling with OTG. If its wrong, I hope someone can help here.
ARM: remove NWFPE and VFP emulation code from the kernel

It has been brought to my attention that the softfloat license is
incompatible with GPLv2 as it contains additional restrictions, so
this code must be removed from the kernel.

Unfortunately, this renders Linux fairly useless on older ARM CPUs
and any ARM VFP that traps to support code for unhandled instructions,
but alas the legal situation takes precident.

Those using ARMv4 and ARMv5 CPUs will have to find the FASTFPE
alternative to NWFPE and see whether it can be resurected.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
mm: vm_swappiness set to 20 (down from the default 60) since we
have plenty of RAM on the Nexus 4
arm: Add auto hotplug driver

This driver is simple and cheap and aims to avoid unnecessary hotplug
events and unnecessary task migrations. The design is simple. The value
of nr_running() (which is the current number of runnable threads) is
averaged over X samples by a ringbuffer. If the value is over a
dynamically calculated value, all CPUs are onlined. When the value falls
under another dynamically calculated value, the CPUs are offlined with a
2 second delay. If there is persistent load on the system, the CPUs will
not continually thrash between onlining and offlining and continually
migrate tasks. The number of online CPUs will remain constant until the
load has dropped below the dynamically calculated value. The online and
offline values are dynamically scaled based on the number of CPUs
online, as is the sampling rate of the driver. This aims to reduce the
expense of the driver and also reduce the number of unless hotplug
transitions which could have been avoided had cpufreq been given the
chance to ramp the online CPUs up and deal with the load. This driver
will also offline secondary cores when the screen is turned off,
providing earlysuspend is available.

It also has a module param to set
the minimum number of online CPUs:
/sys/module/auto_hotplug/parameters/min_online_cpus
This value is ignored when the device enters earlysuspend, as the
secondary CPUs are all offlined, but is set again when the screen is
turned back on.
Change dependencies to allow kernel to be built with ARM hotplug,
and without MSM_RUN_QUEUE_STATS. These are only needed for proprietary
mpdecision.
arm: auto hotplug - wrap all pr_info into the existing debug mode so we
don't spam the kernel log
auto_hotplug: enhancements

1) added module params so tuning an be adjusted in userspace and
debugging can easliy be enabled/disabled

/sys/module/auto_hotplug/parameters/debug
(N/Y - turn off/on debugging)

/sys/module/auto_hotplug/parameters/disable_load_threshold
(integer - load at which a CPU is disabled)

/sys/module/auto_hotplug/parameters/enable_load_threshold (integer -
load at which an extra CPU is enabled)

/sys/module/auto_hotplug/parameters/enable_all_load_threshold (integer -
load at wich all CPU's are enabled)

/sys/module/auto_hotplug/parameters/min_sampling_rate
(milliseconds, converted to jiffies at runtime)

2) lowered enable_load_threshold from 225 to 200 for a little more pep.

To-do: add get/set routines to keep values safe and in acceptable ranges
auto_hotplug: enhancements (rev 2)

1) Added ability to change the number of sampling_periods on the fly via
sysfs (while preserving past history).

2) Added get/set for module parameters so user's can't set incorrect or
unreasonable values.

3) Tweaked defaults

4) Don't wait as long to start auto_hotplug (referenced franco's
git). Today's devices are much faster to boot however
if this code is ported to a slower core device, it may need to be
raised.

5) Debug mode tweaks
-Organize and reduce the number of line output.
-Attempt to make output more user friendly for those that aren't
reading the code.
auto_hotplug: enable the min_online_cpus value

Use a module_param_cb to set the minimum number of online CPUs when the
screen is on.

The values are between 1-4.

usage:
echo '1' < /sys/module/auto_hotplug/parameters/min_online_cpus
auto_hotplug: enhancements (rev 3)

1) Added max_online_cpus (1-4) and exposed to sysfs via a module
parameter. Once set, only allow the chosen number of cores to be
online and make sure we compensate for it in the boostpulse function.

2) Make minor tweaks to mathkid's min_online_cpus

-Don't schedule work in the parameter set, just let it be done on the
next poll iteration.

-Misc style changes so that it matches the other code I have been
adding the module.
auto_hotplug: parameter validation for max_online_cpus

If validation fails, set max_online_cpus = CPUS_AVAILABLE instead of
"1"
auto_hotplug: stack the deck on auto_hotplug_late_resume to get things
moving quickly again