From 5967db8dcaf95e0be3059d487efb1e944080e8d4 Mon Sep 17 00:00:00 2001 From: Oleksandr Tymoshenko Date: Sat, 24 Jan 2015 01:53:28 +0000 Subject: [PATCH] After interrupt read value from register to make sure it reached hardware. This should fix "Spurious inteerupt" message Suggested by ian@ --- sys/arm/ti/am335x/am335x_lcd.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/arm/ti/am335x/am335x_lcd.c b/sys/arm/ti/am335x/am335x_lcd.c index ada08011b64..4fd811cc2ea 100644 --- a/sys/arm/ti/am335x/am335x_lcd.c +++ b/sys/arm/ti/am335x/am335x_lcd.c @@ -356,6 +356,8 @@ am335x_lcd_intr(void *arg) reg = LCD_READ4(sc, LCD_IRQSTATUS); LCD_WRITE4(sc, LCD_IRQSTATUS, reg); + /* Read value back to make sure it reached the hardware */ + reg = LCD_READ4(sc, LCD_IRQSTATUS); if (reg & IRQ_SYNC_LOST) { reg = LCD_READ4(sc, LCD_RASTER_CTRL); @@ -401,6 +403,8 @@ am335x_lcd_intr(void *arg) done: LCD_WRITE4(sc, LCD_END_OF_INT_IND, 0); + /* Read value back to make sure it reached the hardware */ + reg = LCD_READ4(sc, LCD_END_OF_INT_IND); } static int