diff options
author | Imre Deak <imre.deak@solidboot.com> | 2006-09-25 05:41:28 -0400 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2006-09-25 05:41:28 -0400 |
commit | b5beef5d5dddef820eb36c97216487ed7cf68971 (patch) | |
tree | 0af4876d2211273eeb1757420a436021c46890c6 /arch/arm/plat-omap/dma.c | |
parent | 5a4e86daa29e73a02ce8eb484837813e341a0b8a (diff) |
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>
Diffstat (limited to 'arch/arm/plat-omap/dma.c')
-rw-r--r-- | arch/arm/plat-omap/dma.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/plat-omap/dma.c b/arch/arm/plat-omap/dma.c index 9eddc9507147..9948d7a26339 100644 --- a/arch/arm/plat-omap/dma.c +++ b/arch/arm/plat-omap/dma.c | |||
@@ -1339,6 +1339,14 @@ static int __init omap_init_dma(void) | |||
1339 | dma_chan_count = 16; | 1339 | dma_chan_count = 16; |
1340 | } else | 1340 | } else |
1341 | dma_chan_count = 9; | 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 | } else if (cpu_is_omap24xx()) { | 1350 | } else if (cpu_is_omap24xx()) { |
1343 | u8 revision = omap_readb(OMAP_DMA4_REVISION); | 1351 | u8 revision = omap_readb(OMAP_DMA4_REVISION); |
1344 | printk(KERN_INFO "OMAP DMA hardware revision %d.%d\n", | 1352 | printk(KERN_INFO "OMAP DMA hardware revision %d.%d\n", |