cpufreq: ZenX: properly kill the timer if freq is already max and doesnt need to change.
cpufreq: interactive: fix deadlock on spinlock in timer

Need to use irqsave/restore spinlock calls to avoid a deadlock in calls
from the timer.

Change-Id: I15b6b590045ba1447e34ca7b5ff342723e53a605
Signed-off-by: Todd Poynor <toddpoynor@google.com>
cpufreq: interactive: fix race on governor start/stop

There is race condition when both two cpu do CPUFREQ_GOV_STOP and one cpu
do CPUFREQ_GOV_START soon. The sysfs_remove_group is not done yet on one
cpu, but sysfs_create_group is called on another cpu, which cause governor
start failed and then kernel panic in timer callback because the policy and
cpu mask are all kfree in cpufreq driver.

Replace atomic with mutex to lock the whole START/STOP sequence.

Change-Id: I3762b3d44315ae021b8275aca84f5ea9147cc540
Signed-off-by: Lianwei Wang <a22439@motorola.com>
cpufreq: zenx: fix deadlock on spinlock in timer

Apply change ID I15b6b590045ba1447e34ca7b5ff342723e53a605 to ZenX
cpufreq: ZenX: remove set_speed_lock
cpufreq: zenx: fix race on governor start/stop

Apply change ID I3762b3d44315ae021b8275aca84f5ea9147cc540 to ZenX
cpufreq: ZenX: remove timer_rate_suspended and adjust default add/remove sampling periods