Is the interrupt::typelevel::Handler wrong?
Closed this issue · 4 comments
Looks like the interrupt::typelevel::Handler<T>
type actually has this unsafe fn on_interrupt
interface which is directly linked into the interrupt vector table. But the function is not actually wrapped in qingke_rt::interrupt
thus it use ret
instead of mret
.
Has anyone tried using anything beside EXTI that uses interrupt? It looks like it will just put the core into interrupt mode and never leave? (Including the Async UART Tx/Rx ?)
Would be good to know which parts of the code has been run on actual hardware so we can better help with the development here.
Just wasted 6 hours figuring out why the world was not going. Granted I lack any knowledge in risc-v.
Thanks. It should be marked as #[qingke_rt::interrupt]
Thanks.
This is a significant typo that needs to be corrected. 🥲
Looks like this got fixed by the above commit. Closing