diff --git a/src/minidexed.cpp b/src/minidexed.cpp index 1a714fc8..a464968f 100644 --- a/src/minidexed.cpp +++ b/src/minidexed.cpp @@ -436,6 +436,7 @@ void CMiniDexed::Run (unsigned nCore) while (m_CoreStatus[nCore] != CoreStatusIdle) { // just wait + WaitForInterrupt (); } } @@ -449,9 +450,11 @@ void CMiniDexed::Run (unsigned nCore) while (1) { m_CoreStatus[nCore] = CoreStatusIdle; // ready to be kicked + SendIPI (1, IPI_USER); while (m_CoreStatus[nCore] == CoreStatusIdle) { // just wait + WaitForInterrupt (); } // now kicked from core 1 @@ -1230,6 +1233,7 @@ void CMiniDexed::ProcessSound (void) { assert (m_CoreStatus[nCore] == CoreStatusIdle); m_CoreStatus[nCore] = CoreStatusBusy; + SendIPI (nCore, IPI_USER); } // process the TGs assigned to core 1 @@ -1245,6 +1249,7 @@ void CMiniDexed::ProcessSound (void) { while (m_CoreStatus[nCore] != CoreStatusIdle) { + WaitForInterrupt (); // just wait } }