thermosphere: begin to write virtual gic code in C++

This commit is contained in:
TuxSH 2020-02-13 01:50:11 +00:00
parent b21c75b22b
commit 02bbe1bb40
6 changed files with 586 additions and 36 deletions

View file

@ -151,9 +151,9 @@ namespace ams::hvisor {
ClearInterruptPending(id);
if (id >= 32) {
SetInterruptMode(id, isLevelSensitive);
DoSetInterruptAffinity(id, 0xFF); // all possible processors
SetInterruptTargets(id, 0xFF); // all possible processors
}
SetInterruptShiftedPriority(id, prio << m_priorityShift);
SetInterruptPriority(id, prio);
SetInterruptEnabled(id);
}
@ -185,7 +185,7 @@ namespace ams::hvisor {
cpu::InterruptMaskGuard mg{};
std::scoped_lock lk{m_lock};
DoSetInterruptAffinity(id, affinity);
SetInterruptTargets(id, affinity);
}
void IrqManager::HandleInterrupt(ExceptionStackFrame *frame)