sync: fix timeout = 0 wait behavior

Change-Id: I8b9254e92c26d9f44abbc0c77fb44624de947013
Signed-off-by: Jamie Gennis <jgennis@google.com>

Conflicts:
	drivers/base/sync.c
cpufreq: ondemand: add boostpulse interface

Squashed commit consisting of the following:
--------
For applications that require a one-shot increase in frequency,
the boostpulse interface would help to scale to max for the time
specified in boostime. This helps applications that currently
increases scaling_min_freq and resets later after a fixed duration.
Instead of changing scaling_min_freq applications can directly write
to boostpulse and governer resets during regular timer after the time
expires.

Signed-off-by: Narayanan Gopalakrishnan <nargop@codeaurora.org>
--------
cpufreq: ondemand: Fix the boostpulse interface

* Boostpulse was not working because no default frequency was set.
 * We don't need an input handler to push the freq to max, userspace
   does a better job with the Power HAL.
 * Tweak boost time to 500ms

cpufreq: ondemand: Add duration for boosting

* Keep default behavior of 500ms boost if "1" is given, otherwise use
   the value (microseconds) as the boost duration.

drivers: cpufreq: Add max duration for boosting

* Don't allow boosting for more than 5 seconds.

From: Steve Kondik<shade@chemlab.org>
--------
cpufreq: ondemand: Default to max

From: Daniel Bateman<jetison.24@gmail.com>
--------
Change-Id: Ib272703616b9dabc9ab54221f6e2c84c9e9c6dda

Conflicts:
	drivers/cpufreq/cpufreq_ondemand.c
cpufreq: ondemand: set default boostfreq to 700 MHz