ARM DSR()-s in non-kernel mode

Jani Monoses jani@iv.ro
Fri Nov 19 14:57:00 GMT 2004


Hello

this is what I had to do to get DSR's firing when not using the kernel.
It seems to work but I am not sure if it's enough.Could somebody familiar with
ARM vectors.S comment?

In particular the following is at the top of the file.

#ifdef CYGPKG_KERNEL  // no CDL yet
#include <pkgconf/kernel.h>
#else
# undef CYGFUN_HAL_COMMON_KERNEL_SUPPORT
# undef CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK
#endif


why is INTERRUPT_STACK undefed if it's a valid option, and the default for non-kernel mode?

thanks
Jani



--- orig/packages/hal/arm/arch/current/src/vectors.S
+++ mod/packages/hal/arm/arch/current/src/vectors.S
@@ -938,7 +938,6 @@
          str     r1,[r2]
          ldreq   sp,[sp]         // This should be the saved stack pointer
  #endif
-#ifdef CYGFUN_HAL_COMMON_KERNEL_SUPPORT
          // The return value from the handler (in r0) will indicate whether a
          // DSR is to be posted. Pass this together with a pointer to the
          // interrupt object we have just used to the interrupt tidy up routine.
@@ -956,7 +955,6 @@
                                  // threads and call scheduler
          ARM_MODE(r1,10)
  17:
-#endif

  //      mov     r0,sp
  //      bl      show_frame_out



More information about the Ecos-patches mailing list