From 6faf10944cba8e6461fe1d819e1d4b30f4dfdde8 Mon Sep 17 00:00:00 2001 From: patacongo Date: Sat, 23 May 2009 14:30:07 +0000 Subject: Need to clear interrupt git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1819 42af7a65-404d-4744-a932-0658087f49c3 --- nuttx/arch/arm/src/lm3s/lm3s_ssi.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'nuttx/arch') diff --git a/nuttx/arch/arm/src/lm3s/lm3s_ssi.c b/nuttx/arch/arm/src/lm3s/lm3s_ssi.c index a880d2b23..4370a05fe 100755 --- a/nuttx/arch/arm/src/lm3s/lm3s_ssi.c +++ b/nuttx/arch/arm/src/lm3s/lm3s_ssi.c @@ -760,10 +760,16 @@ static inline struct lm32_ssidev_s *ssi_mapirq(int irq) static int ssi_interrupt(int irq, void *context) { struct lm32_ssidev_s *priv = ssi_mapirq(irq); + uint32 regval; int ntxd; DEBUGASSERT(priv != NULL); + /* Clear pending interrupts */ + + regval = ssi_getreg(priv, LM3S_SSI_RIS_OFFSET); + ssi_putreg(priv, LM3S_SSI_ICR_OFFSET, regval); + /* Handle outgoing Tx FIFO transfers */ ntxd = ssi_performtx(priv); -- cgit v1.2.3