msm: acpuclock-8x60: Drop "slowest" frequency table

The voltage data in this table is not used. It applied only to
a handful of internal part samples that were never distributed.
Remove it, since it is neither maintained nor useful.

Change-Id: I2a08bd0287a400cfb65666dc3445fd5441d784d1
Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
msm: acpuclock: Fix error path in multicore targets

Several acpuclock drivers have inherited the same error path bug in
acpuclk_set_rate(). If an invalid cpu is passed as an argument to
these functions, they should return immediately instead of jumping to
the 'out' label, which attempts to unlock a mutex which has never
been acquired.

Change-Id: I47b9709605673a5200caf73a2f2a5086fde63efe
Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
msm: acpuclock-8x60: Optimize CPU voltages on 1.7GHz parts

Hardware characterization shows that these parts can operate reliably
at lower voltages than were previously used. Update the tables to
take advantage of the power savings.

Change-Id: I6aca2da89e343c1588579e7183a0ce375cb9a821
Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
msm: spm: Allow setting of voltages across cpus

The original intent of disallowing voltage set across cpus is to prevent
setting of voltages on a core when its idle thread. The cpufreq
framework ensures that the frequency changes and hence the voltage
changes happens on the respective cpus. By allowing setting of voltages
from others cpus, the secondary cores can be brought out of reset by the
non-primary CPUs after boot and thereby help mitigate any thermal issues
associated wth multicores.

The regulator framework that calls into msm_spm_set_vdd provides the
necessary access restrictions to prevent simultaneous calls into
msm_spm_set_vdd.And hence the spinlocks around the set_vdd calls have
been removed.

Change-Id: Ie60673d4b65953a0a8f9ec9bafb82399f692a7b5
Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>