cpufreq: Retain only online cpus in managed_policy->cpus

cpufreq's handling of cpu online event can incorrectly initialize
managed_policy->cpus to include offline cpus. This causes cpufreq
governors to include offline cpus in their idle time computation, which
causes frequency to shoot up beyond normal levels (on systems where 2 or
more cpus need to be synchronized wrt frequency change).

This frequency shootup was not seen prior to commit 21111be8 which
changed idle time accounting for offline cpus. Prior to commit 21111be8,
idle time statistics for offline cpus would include their offline time
as well. Post commit 21111be8, offline time is not included in a cpu's
idle time statistics.

As a result, ondemand (or other cpufreq) governors would see unchanged
idle time for offline cpus, causing them to interpret those (offline)
cpus as 100% busy, which is wrong.

This patch fixes the issue by modifying cpufreq's hotplug handling to
retain only online cpus in managed_policy->cpus field. cpufreq governors
would then skip such offline cpus from idle time calculations.

Change-Id: Id2eba8c0ec3367609369b2e42a4e1386ff2e7ab5
Signed-off-by: Srivatsa Vaddagiri <vatsa@codeaurora.org>

10x mrg666
cpufreq: Kconfig option to sync scaling across CPU cores

Allow compatibility with CM CPU Performances settings which only
set cpu governor and min/max frequencies on the first cpu core

Change-Id: Id9ab81ba730180a3caabcf17e8913b9b561664a5

(Resolved)Conflicts:
	drivers/cpufreq/cpufreq.c
lib/lzo: huge LZO decompression speedup on ARM by using unaligned access

Signed-off-by: Markus F.X.J. Oberhumer <markus@oberhumer.com>

(Resolved)Conflicts:
	lib/lzo/lzo1x_decompress_safe.c
	lib/lzo/lzodefs.h
Revert "Update baterry driver"

This reverts commit 6be0ccc502861114f896c84a94a46868fa3fe781.