Revert "Revert "auto_hotplug: use power efficient workqueue""

This reverts commit 616cc04802ed2b65109046a9be12ee363ee7202a.
mmc: fix the workqueue overload battery waste

After switching to the smdk4412 kernel I noticed a workqueue overload,
battery lasting less, and Android OS showing up at the top as result.

Tracing showed that mmc_host_clk_gate_work was one of the runqueues
called regularly in the background.

The #ifdef is clearly reversed and that leads to the ndelay being called
every time, while ndelay was never called before.

Not yet sure if this fixes the "apparent" regression but it's not bad so
far, after 1h of uptime android OS is below Android System.

Change-Id: Ief78ed7ddb3eec85636844b9a730cac832b096b4

Signed-off-by: revjunkie <gadgetjuan@gmail.com>
wakelock: use single threaded workqueueus

Avoid the concurrency management that could delay execution if there's
lots of workqueue traffic (and allow the runqueue to run on any CPU).

Lots of workqueue traffic can be generated by setting
ondemand/sampling_rate to 10000.

Change-Id: I55b8a223f4a389b93d49eef0d809eb1efe1790ba

Signed-off-by: Andrea Arcangeli <andrea@cpushare.com>
Signed-off-by: revjunkie <gadgetjuan@gmail.com>