The audio output FIFO is not empty when the request to put audio in standby
occurs. This stops the DMA callbacks, preventing the FIFO from ever emptying.
Therefore, audio will forever hold a wakelock, preventing the device from
entering LP0.
Change-Id: I8a642916707d07e2ff71f4e0ff7fc0f23dd41959
Signed-off-by: Greg Meiste <w30289@motorola.com>
Signed-off-by: Iliyan Malchev <malchev@google.com>
#include <linux/miscdevice.h>
#include <linux/cpcap_audio.h>
#include <linux/uaccess.h>
+#include <linux/delay.h>
#include <mach/cpcap_audio.h>
current_output.on = !out.on;
if (out.on) {
pr_info("%s: standby mode\n", __func__);
+ /* HACK: Give output audio FIFO time to empty */
+ msleep(100);
tegra_setup_audio_output_off();
break;
}