summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 5c0656f)
raw | patch | inline | side by side (parent: 5c0656f)
author | Frank Livingston <frank-livingston@ti.com> | |
Tue, 5 Jun 2018 17:23:11 +0000 (12:23 -0500) | ||
committer | Frank Livingston <frank-livingston@ti.com> | |
Tue, 5 Jun 2018 17:23:11 +0000 (12:23 -0500) |
Clear (drop) already posted Input events upon Input re-select.
Without this change, IO Phy & McASP LLD lose sync after Input re-select.
This problem was discovered for execPAIInHDMI re-select after at-boot.
Without this change, IO Phy & McASP LLD lose sync after Input re-select.
This problem was discovered for execPAIInHDMI re-select after at-boot.
pasdk/test_dsp/framework/audioStreamInpProcNewIO.c | patch | blob | history |
diff --git a/pasdk/test_dsp/framework/audioStreamInpProcNewIO.c b/pasdk/test_dsp/framework/audioStreamInpProcNewIO.c
index 61518a499f85d0e00e1da6e970f70e6149913858..84d525c83631c5869794344ccac9edb3121db9df 100644 (file)
}
}
+// Indicates whether Input has been selected
Int d10Initialized = 0;
+
//extern Aud_STATUS mcaspAudioConfig(void);
//extern void McaspDevice_init(void);
Int zMD;
Int interface;
const PAF_SIO_Params *pD10Params;
+ UInt postedEvents;
zMD = pAstCfg->masterDec;
return ASIP_ERR_MCASP_CFG;
}
+ // Clear (drop) already posted Input data events
+ postedEvents = Event_getPostedEvents(gAsitEvtHandle);
+ while ((postedEvents & ASIT_EVTMSK_INPDATA) != 0)
+ {
+ Event_pend(gAsitEvtHandle, ASIT_EVTMSK_NONE, ASIT_EVTMSK_INPDATA, 0);
+ postedEvents = Event_getPostedEvents(gAsitEvtHandle);
+ }
+
pInp->hMcaspChan = NULL; // reset active McASP LLD handle
if (pInp->pRxParams != NULL) // sanity check, pInp->pRxParams should be non NULL if pInp->hMcaspChan is non NULL
{