SVC: Difference between revisions
Add Interrupts |
|||
Line 516: | Line 516: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| Result | | Result BindInterrupt(Interrupt name, Handle syncObject, s32 priority, bool isManualClear) | ||
| | | | ||
|- | |- | ||
Line 1,466: | Line 1,466: | ||
= svc7B Backdoor = | = svc7B Backdoor = | ||
This saves SVC-mode SP+LR on the user-mode stack, then sets the SVC-mode SP to the user-mode SP. This then calls the specified code in SVC-mode. Once the called code returns, this pops the saved SP+LR off the stack for restoring the SVC-mode SP, then returns from the svc7b handler. Note that this svc7b handler does not disable IRQs, if any IRQs/context-switches occur while the SVC-mode SP is set to the user-mode one here, the ARM11-kernel will crash(which hangs the whole ARM11-side system). | This saves SVC-mode SP+LR on the user-mode stack, then sets the SVC-mode SP to the user-mode SP. This then calls the specified code in SVC-mode. Once the called code returns, this pops the saved SP+LR off the stack for restoring the SVC-mode SP, then returns from the svc7b handler. Note that this svc7b handler does not disable IRQs, if any IRQs/context-switches occur while the SVC-mode SP is set to the user-mode one here, the ARM11-kernel will crash(which hangs the whole ARM11-side system). | ||
= Kernel error-codes = | = Kernel error-codes = |