diff options
author | Manjunathappa, Prakash <prakash.pm@ti.com> | 2012-07-18 11:21:11 -0400 |
---|---|---|
committer | Florian Tobias Schandinat <FlorianSchandinat@gmx.de> | 2012-07-28 21:00:31 -0400 |
commit | 8a81dccd391a3e78f502da137de8fb62020c5809 (patch) | |
tree | 232584ab33465d4a100a8a9e6f59dda3ec3821ef /drivers/video | |
parent | 99a647d1f17375a803528aaab303518958a7e17a (diff) |
video: da8xx-fb rev2: fix disabling of palette completion interrupt
Writing '1' to particular bit of IRQENABLE_CLEAR register disables the
corresponding interrupt on revision 2 LCDC. This register was wrongly
configured to disable all previous enabled interrupts instead of
disabling only palette completion interrupt. Patch fixes it by clearing
only palette completion interrupt bit.
Signed-off-by: Manjunathappa, Prakash <prakash.pm@ti.com>
Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Diffstat (limited to 'drivers/video')
-rw-r--r-- | drivers/video/da8xx-fb.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/video/da8xx-fb.c b/drivers/video/da8xx-fb.c index 034e182a29f7..7264aa3b20ff 100644 --- a/drivers/video/da8xx-fb.c +++ b/drivers/video/da8xx-fb.c | |||
@@ -716,7 +716,6 @@ static irqreturn_t lcdc_irq_handler_rev02(int irq, void *arg) | |||
716 | { | 716 | { |
717 | struct da8xx_fb_par *par = arg; | 717 | struct da8xx_fb_par *par = arg; |
718 | u32 stat = lcdc_read(LCD_MASKED_STAT_REG); | 718 | u32 stat = lcdc_read(LCD_MASKED_STAT_REG); |
719 | u32 reg_int; | ||
720 | 719 | ||
721 | if ((stat & LCD_SYNC_LOST) && (stat & LCD_FIFO_UNDERFLOW)) { | 720 | if ((stat & LCD_SYNC_LOST) && (stat & LCD_FIFO_UNDERFLOW)) { |
722 | lcd_disable_raster(); | 721 | lcd_disable_raster(); |
@@ -733,10 +732,8 @@ static irqreturn_t lcdc_irq_handler_rev02(int irq, void *arg) | |||
733 | 732 | ||
734 | lcdc_write(stat, LCD_MASKED_STAT_REG); | 733 | lcdc_write(stat, LCD_MASKED_STAT_REG); |
735 | 734 | ||
736 | /* Disable PL completion inerrupt */ | 735 | /* Disable PL completion interrupt */ |
737 | reg_int = lcdc_read(LCD_INT_ENABLE_CLR_REG) | | 736 | lcdc_write(LCD_V2_PL_INT_ENA, LCD_INT_ENABLE_CLR_REG); |
738 | (LCD_V2_PL_INT_ENA); | ||
739 | lcdc_write(reg_int, LCD_INT_ENABLE_CLR_REG); | ||
740 | 737 | ||
741 | /* Setup and start data loading mode */ | 738 | /* Setup and start data loading mode */ |
742 | lcd_blit(LOAD_DATA, par); | 739 | lcd_blit(LOAD_DATA, par); |