Ingenic targets:

* LCD rework
 * Dynamic DMA enabling
 * PCM cleanup
 * USB: replace printf() with logf()
 * System: get rid of in_interrupt_mode()
 * Backlight: add support for software PWM


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19495 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Maurus Cuelenaere 2008-12-20 01:48:46 +00:00
parent 0301ed5594
commit c983e3b1d2
12 changed files with 253 additions and 166 deletions

View file

@ -138,6 +138,8 @@ static void jz_nand_write_dma(void *source, unsigned int len, int bw)
if(((unsigned int)source < 0xa0000000) && len)
dma_cache_wback_inv((unsigned long)source, len);
dma_enable();
REG_DMAC_DCCSR(DMA_NAND_CHANNEL) = 0;
REG_DMAC_DSAR(DMA_NAND_CHANNEL) = PHYSADDR((unsigned long)source);
@ -151,6 +153,8 @@ static void jz_nand_write_dma(void *source, unsigned int len, int bw)
while( REG_DMAC_DTCR(DMA_NAND_CHANNEL) )
yield();
dma_disable();
mutex_unlock(&nand_mtx);
}
@ -161,6 +165,8 @@ static void jz_nand_read_dma(void *target, unsigned int len, int bw)
if(((unsigned int)target < 0xa0000000) && len)
dma_cache_wback_inv((unsigned long)target, len);
dma_enable();
REG_DMAC_DCCSR(DMA_NAND_CHANNEL) = 0;
REG_DMAC_DSAR(DMA_NAND_CHANNEL) = PHYSADDR((unsigned long)NAND_DATAPORT);
REG_DMAC_DTAR(DMA_NAND_CHANNEL) = PHYSADDR((unsigned long)target);
@ -172,6 +178,8 @@ static void jz_nand_read_dma(void *target, unsigned int len, int bw)
while( REG_DMAC_DTCR(DMA_NAND_CHANNEL) )
yield();
dma_disable();
mutex_unlock(&nand_mtx);
}