diff options
Diffstat (limited to 'src/kernel')
| -rw-r--r-- | src/kernel/intmsghandler.C | 12 | ||||
| -rw-r--r-- | src/kernel/misc.C | 2 |
2 files changed, 14 insertions, 0 deletions
diff --git a/src/kernel/intmsghandler.C b/src/kernel/intmsghandler.C index 1ce9de1b8..8a865eaf3 100644 --- a/src/kernel/intmsghandler.C +++ b/src/kernel/intmsghandler.C @@ -208,3 +208,15 @@ MessageHandler::HandleResult InterruptMsgHdlr::handleResponse return UNHANDLED_RC; } + +void InterruptMsgHdlr::issueSbeMboxWA() +{ + if(cv_instance) + { + cv_instance->iv_lock.lock(); + cv_instance->sendMessage(MSG_INTR_ISSUE_SBE_MBOX_WA, + reinterpret_cast<void*>(MSG_INTR_ISSUE_SBE_MBOX_WA), + NULL,NULL); + cv_instance->iv_lock.unlock(); + } +} diff --git a/src/kernel/misc.C b/src/kernel/misc.C index 48c1240de..cba6a152c 100644 --- a/src/kernel/misc.C +++ b/src/kernel/misc.C @@ -298,6 +298,8 @@ namespace KernelMisc iv_caller->state = TASK_STATE_RUNNING; TaskManager::setCurrentTask(iv_caller); + //Issue sbe master workaround + InterruptMsgHdlr::issueSbeMboxWA(); } void WinkleCore::nonactiveMainWork() |

