From eaf6610dd78266f251e251ff5ce05e12be8ab8a3 Mon Sep 17 00:00:00 2001 From: Oleksandr Tymoshenko Date: Tue, 20 Jan 2015 02:24:08 +0000 Subject: [PATCH] Properly clear IRQ status in order to fix "Spurious IRQ" message from AINT. This register is not documented in TRM but that's what linux driver does --- sys/arm/ti/am335x/am335x_lcd.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/arm/ti/am335x/am335x_lcd.c b/sys/arm/ti/am335x/am335x_lcd.c index 09f81f0d517e..a4c56b914922 100644 --- a/sys/arm/ti/am335x/am335x_lcd.c +++ b/sys/arm/ti/am335x/am335x_lcd.c @@ -150,6 +150,7 @@ __FBSDID("$FreeBSD$"); #define IRQ_SYNC_LOST (1 << 2) #define IRQ_RASTER_DONE (1 << 1) #define IRQ_FRAME_DONE (1 << 0) +#define LCD_END_OF_INT_IND 0x68 #define LCD_CLKC_ENABLE 0x6C #define CLKC_ENABLE_DMA (1 << 2) #define CLKC_ENABLE_LDID (1 << 1) @@ -397,6 +398,8 @@ am335x_lcd_intr(void *arg) if (reg & IRQ_ACB) { /* TODO: Handle ACB */ } + + LCD_WRITE4(sc, LCD_END_OF_INT_IND, 0); } static int