Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: OMAP: Sleep is prevented when no LCD is attached

We have to make sure that the LCD DMA external destination bit is
cleared by default, otherwise OMAP won't sleep.

Signed-off-by: Imre Deak <imre.deak@solidboot.com>
Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>

authored by

Imre Deak and committed by
Tony Lindgren
b5beef5d 5a4e86da

+8
+8
arch/arm/plat-omap/dma.c
··· 1339 1339 dma_chan_count = 16; 1340 1340 } else 1341 1341 dma_chan_count = 9; 1342 + if (cpu_is_omap16xx()) { 1343 + u16 w; 1344 + 1345 + /* this would prevent OMAP sleep */ 1346 + w = omap_readw(OMAP1610_DMA_LCD_CTRL); 1347 + w &= ~(1 << 8); 1348 + omap_writew(w, OMAP1610_DMA_LCD_CTRL); 1349 + } 1342 1350 } else if (cpu_is_omap24xx()) { 1343 1351 u8 revision = omap_readb(OMAP_DMA4_REVISION); 1344 1352 printk(KERN_INFO "OMAP DMA hardware revision %d.%d\n",