使用PDK的example代码 在EVM板上跑,发现中断不能触发,但是从OUTHD上看解码应该是完成的。
论坛上有人说和SIMULATOR_SUPPORT 有关
但是不知道下面的代码是定义还是不定义该宏
static Int32 enable_tcp3d (void)
{
#ifndef SIMULATOR_SUPPORT
/* TCP3D power domain is turned OFF by default.
* It needs to be turned on before doing any TCP3D device register access.
* This is not required for the simulator. */
/* Set TCP3D Power domain to ON */
CSL_PSC_enablePowerDomain (CSL_PSC_PD_TCP3D_A);
CSL_PSC_enablePowerDomain (CSL_PSC_PD_TCP3D_B);
/* Enable the clocks too for TCP3D */
CSL_PSC_setModuleNextState (CSL_PSC_LPSC_TCP3D_A, PSC_MODSTATE_ENABLE);
CSL_PSC_setModuleNextState (CSL_PSC_LPSC_TCP3D_B, PSC_MODSTATE_ENABLE);
/* Start the state transition */
CSL_PSC_startStateTransition (CSL_PSC_PD_TCP3D_A);
CSL_PSC_startStateTransition (CSL_PSC_PD_TCP3D_B);
/* Wait until the state transition process is completed. */
while (!CSL_PSC_isStateTransitionDone (CSL_PSC_PD_TCP3D_A));
/* Return TCP3D_A PSC status */
if ((CSL_PSC_getPowerDomainState(CSL_PSC_PD_TCP3D_A) != PSC_PDSTATE_ON) ||
(CSL_PSC_getModuleState (CSL_PSC_LPSC_TCP3D_A) != PSC_MODSTATE_ENABLE))
{
/* TCP3D Power on failed. Return error */
return -1;
}
while (!CSL_PSC_isStateTransitionDone (CSL_PSC_PD_TCP3D_B));
/* Return TCP3D_B PSC status */
if ((CSL_PSC_getPowerDomainState(CSL_PSC_PD_TCP3D_B) != PSC_PDSTATE_ON) ||
(CSL_PSC_getModuleState (CSL_PSC_LPSC_TCP3D_B) != PSC_MODSTATE_ENABLE))
{
/* TCP3D Power on failed. Return error */
return -1;
}
return 0;
#else
/* PSC is not supported on simulator. Return success always */
return 0;
#endif
}
我在demo板上尝试了一下,不定义该宏,解码能成功,但是中断不能触发
定义该宏后,解码不能成功,inparam都没有搬移到tcp3d上去
清问有知道的吗