add kernel-based msm_autosmp.c

bring msm_mpdecision.c from my shooter kernel, renamed as msm_autosmp.c
to avoid confusing with msm_mpdecision.c in the original source,
also modified for quad-core cpu
slightly adjust the load levels in autosmp and interactive
silence msm_autosmp kernel messages
readjust msm_autosmp loadlimits
this gives much better consistency in the hotplug events
msm_autosmp: unify the time and load limits for all cores
msm_autosmp: modify the name of time variable
msm_autosmp: minor revisions
msm_autosmp: remove msm dependencies and rename as autosmp
generalize as autosmp for other architectures

Conflicts:
	arch/arm/mach-msm/Makefile
autosmp: increase wq priority and decrease hotplug load limit

This increases responsiveness for smoother user experience. The impact
on battery life should be minimal. Plus several cosmetic changes.
autosmp: remove unnecessary __cpuinit
and also change a function name
autosmp: remove pause function and unnecessary cpu online checks
also clean up include files and rename parameters
autosmp: remove unnecessary options in workqueue allocation
autosmp: use cpufreq_get and a counter instead of time functions
autosmp: use cpu frequency instead of load average

- less overhead for the system without the additional load calculation
  by autosmp,
- autosmp needs to work with cpu governor in giving adequate computing
  power to system and CPU governor should have the leading role in this
  task since it must respond earlier,
- since frequency is a function of CPU load determined by the CPU
  governor, autosmp becomes more consistent with the CPU governor when
  CPU frequency is used instead of independently calculating the load
  average,
- works in better sync with the CPU governor by giving the priority
  to increasing the frequency before rushing into hotplugging a core or
  dragging the system
- since autosmp follows the CPU governor it automatically adapts when
  governor is changed.
autosmp: use a lower frequency limit for unplug

Make sure it is really quiet out there so that unplugging a fairly
loaded core wouldn't be immediately followed by an hotplug due to
a spike in the frequency of other online cores. 600 lower limit should
be low enough for hearing the crickets
autosmp: use cpufreq_quick_get instead of cpufreq_get
and fix a typo
autosmp: improve the hotplug algorithm
autosmp: minor revision and cleanup
no functional changes
arm: autosmp: remove get/put_online_cpus

autosmp works fine without these, remove them to reduce the overhead.
arm: autosmp: use kHz for cpu frequency to avoid two divide operations in the code