ASoC: Intel: Skylake: Use CGCTL.MISCBDCGE for Phrase detection notification
Per HW recommendation, SW shall clear the CGCTL.MISCBDCGE and set it back once data is transferred. So clear this when we get the IPC and track using a driver flag, and set back on closure Signed-off-by: Dharageswari.R <dharageswari.r@intel.com> Signed-off-by: Jayachandran B <jayachandran.b@intel.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:

کامیت شده توسط
Mark Brown

والد
0c8ba9d285
کامیت
721c3e36f7
@@ -16,8 +16,10 @@
|
||||
|
||||
#include "../common/sst-dsp.h"
|
||||
#include "../common/sst-dsp-priv.h"
|
||||
#include "skl.h"
|
||||
#include "skl-sst-dsp.h"
|
||||
#include "skl-sst-ipc.h"
|
||||
#include "sound/hdaudio_ext.h"
|
||||
|
||||
|
||||
#define IPC_IXC_STATUS_BITS 24
|
||||
@@ -322,6 +324,19 @@ static int skl_ipc_process_notification(struct sst_generic_ipc *ipc,
|
||||
wake_up(&skl->boot_wait);
|
||||
break;
|
||||
|
||||
case IPC_GLB_NOTIFY_PHRASE_DETECTED:
|
||||
dev_dbg(ipc->dev, "***** Phrase Detected **********\n");
|
||||
|
||||
/*
|
||||
* Per HW recomendation, After phrase detection,
|
||||
* clear the CGCTL.MISCBDCGE.
|
||||
*
|
||||
* This will be set back on stream closure
|
||||
*/
|
||||
skl->enable_miscbdcge(ipc->dev, false);
|
||||
skl->miscbdcg_disabled = true;
|
||||
break;
|
||||
|
||||
default:
|
||||
dev_err(ipc->dev, "ipc: Unhandled error msg=%x",
|
||||
header.primary);
|
||||
|
مرجع در شماره جدید
Block a user