Naked IRQ #121

Merged
sb10q merged 2 commits from pca006132/artiq-zynq:master into master 2021-01-18 17:09:03 +08:00

Addressing M-Labs/zynq-rs#73.

This fixes the compiler warnings by using only asm in the naked IRQ handler, and jump to our actual handler for IRQs.

It seems that the error introduced previously is due to EHABI expecting our non-naked handler to have a caller, and tries to unwind the stack, which causes interesting interrupts. (probably, I did not really dig into which line in the libunwind causes the problem, as I still don't know how to attach to a running core1 with openocd)

Addressing https://git.m-labs.hk/M-Labs/zynq-rs/issues/73. This fixes the compiler warnings by using only asm in the naked IRQ handler, and jump to our actual handler for IRQs. It seems that the error introduced previously is due to EHABI expecting our non-naked handler to have a caller, and tries to unwind the stack, which causes interesting interrupts. (probably, I did not really dig into which line in the libunwind causes the problem, as I still don't know how to attach to a running core1 with openocd)
pca006132 added 1 commit 2021-01-18 16:48:22 +08:00
sb10q reviewed 2021-01-18 17:00:58 +08:00
@ -27,0 +43,4 @@
// save the SP and set it back after exiting IRQ
// exception unwinding expect to unwind from this function, as this is not the entrance
// function, maybe to IRQ which cannot further unwind...
// if we set the SP to __stack1_start, interesting interrupts would be triggered when

Interrupts? Or CPU exceptions?

Interrupts? Or CPU exceptions?

CPU exceptions, maybe I should change the wording.

CPU exceptions, maybe I should change the wording.
pca006132 force-pushed master from 9eb6d54a7c to be01fbd943 2021-01-18 17:08:26 +08:00 Compare
sb10q merged commit be01fbd943 into master 2021-01-18 17:09:03 +08:00
Sign in to join this conversation.
No reviewers
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: M-Labs/artiq-zynq#121
There is no content yet.