On 10/31/2013 03:15 PM, Gedare Bloom wrote:
I guess this interrupt vector gets "cleared" by the ISR return path?

The LEON Interrupt model is edge so to speak. The CPU will acknoledge the IRQ when the trap vector is entered, so normally software need to do nothing. On level interrupts however we must take care by software acking, and we can not mix edge with level. The IPI is edge in the RTEMS case and we could potentially miss an IPI by clearing.


On Thu, Oct 31, 2013 at 9:58 AM, Daniel Hellstrom <dan...@gaisler.com> wrote:
Signed-off-by: Daniel Hellstrom <dan...@gaisler.com>
---
  c/src/lib/libbsp/sparc/leon3/smp/smp_leon3.c |    1 -
  1 files changed, 0 insertions(+), 1 deletions(-)

diff --git a/c/src/lib/libbsp/sparc/leon3/smp/smp_leon3.c 
b/c/src/lib/libbsp/sparc/leon3/smp/smp_leon3.c
index f7b70f3..ec2b4a8 100644
--- a/c/src/lib/libbsp/sparc/leon3/smp/smp_leon3.c
+++ b/c/src/lib/libbsp/sparc/leon3/smp/smp_leon3.c
@@ -37,7 +37,6 @@ static rtems_isr bsp_ap_ipi_isr(
    rtems_vector_number vector
  )
  {
-  LEON_Clear_interrupt(LEON3_MP_IRQ);
    rtems_smp_process_interrupt();
  }

--
1.7.0.4

_______________________________________________
rtems-devel mailing list
rtems-devel@rtems.org
http://www.rtems.org/mailman/listinfo/rtems-devel

_______________________________________________
rtems-devel mailing list
rtems-devel@rtems.org
http://www.rtems.org/mailman/listinfo/rtems-devel

Reply via email to