summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nuttx/arch/z80/include/ez80/irq.h4
-rw-r--r--nuttx/arch/z80/src/ez80/ez80_sigdeliver.c7
2 files changed, 6 insertions, 5 deletions
diff --git a/nuttx/arch/z80/include/ez80/irq.h b/nuttx/arch/z80/include/ez80/irq.h
index b63ac7aef..045429d78 100644
--- a/nuttx/arch/z80/include/ez80/irq.h
+++ b/nuttx/arch/z80/include/ez80/irq.h
@@ -219,8 +219,8 @@ struct xcptcontext
/* The following retains that state during signal execution */
- chipreg_t saved_pc; /* Saved return address */
- chipreg_t saved_irqctl; /* Saved interrupt state */
+ chipreg_t saved_pc; /* Saved return address */
+ chipreg_t saved_i; /* Saved interrupt state */
#endif
};
#endif
diff --git a/nuttx/arch/z80/src/ez80/ez80_sigdeliver.c b/nuttx/arch/z80/src/ez80/ez80_sigdeliver.c
index 8a8d1ab2a..5e9706d15 100644
--- a/nuttx/arch/z80/src/ez80/ez80_sigdeliver.c
+++ b/nuttx/arch/z80/src/ez80/ez80_sigdeliver.c
@@ -45,6 +45,7 @@
#include <nuttx/irq.h>
#include <nuttx/arch.h>
+#include <arch/board/board.h>
#include "chip/switch.h"
#include "os_internal.h"
@@ -83,7 +84,7 @@ void up_sigdeliver(void)
{
#ifndef CONFIG_DISABLE_SIGNALS
FAR _TCB *rtcb = (_TCB*)g_readytorun.head;
- chipret_t regs[XCPTCONTEXT_REGS];
+ chipreg_t regs[XCPTCONTEXT_REGS];
sig_deliver_t sigdeliver;
/* Save the errno. This must be preserved throughout the signal handling
@@ -101,7 +102,7 @@ void up_sigdeliver(void)
/* Save the real return state on the stack. */
- z80_copystate(regs, rtcb->xcp.regs);
+ ez80_copystate(regs, rtcb->xcp.regs);
regs[XCPT_PC] = rtcb->xcp.saved_pc;
regs[XCPT_I] = rtcb->xcp.saved_i;
@@ -134,7 +135,7 @@ void up_sigdeliver(void)
*/
up_ledoff(LED_SIGNAL);
- z80_restoreusercontext(regs);
+ ez80_restorecontext(regs);
#endif
}