src/drivers/intel/cavs/ipc.c
/* tell host we have completed command */
tell host we have completed command
tell host we have completed command
void ipc_platform_poll_set_cmd_done(void)
{
#if CAVS_VERSION == CAVS_VERSION_1_5
	ipc_write(IPC_DIPCT, ipc_read(IPC_DIPCT) | IPC_DIPCT_BUSY);
#else
	ipc_write(IPC_DIPCTDR, ipc_read(IPC_DIPCTDR) | IPC_DIPCTDR_BUSY);
	ipc_write(IPC_DIPCTDA, ipc_read(IPC_DIPCTDA) | IPC_DIPCTDA_DONE);
#endif
	ipc_write(IPC_DIPCCTL, ipc_read(IPC_DIPCCTL) | IPC_DIPCCTL_IPCTBIE);
}
void ipc_platform_poll_set_cmd_done ( void ) { #if CAVS_VERSION == CAVS_VERSION_1_5 ipc_write ( IPC_DIPCT , ipc_read ( IPC_DIPCT ) | IPC_DIPCT_BUSY ) ; #else ipc_write ( IPC_DIPCTDR , ipc_read ( IPC_DIPCTDR ) | IPC_DIPCTDR_BUSY ) ; ipc_write ( IPC_DIPCTDA , ipc_read ( IPC_DIPCTDA ) | IPC_DIPCTDA_DONE ) ; #endif ipc_write ( IPC_DIPCCTL , ipc_read ( IPC_DIPCCTL ) | IPC_DIPCCTL_IPCTBIE ) ; }
tell host we have completed command
tell host we have completed command
/* write 1 to clear busy, and trigger interrupt to host*/ /* unmask Busy interrupt */