summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmaury Pouly <pamaury@rockbox.org>2011-09-13 23:38:56 +0000
committerAmaury Pouly <pamaury@rockbox.org>2011-09-13 23:38:56 +0000
commit1b220f1856ab80be46a263d31ea9e6cf741c7df9 (patch)
tree6b152ee4e8c7187ebb8cdcbd1b8f12d05b3b674c
parentb27d07e094376c2970cdb62434450f7a683edee7 (diff)
downloadrockbox-1b220f1856ab80be46a263d31ea9e6cf741c7df9.tar.gz
rockbox-1b220f1856ab80be46a263d31ea9e6cf741c7df9.zip
imx233/fuze+: reset dma block correctly and define maximum transfer size
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30526 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/target/arm/imx233/dma-imx233.c4
-rw-r--r--firmware/target/arm/imx233/dma-imx233.h3
2 files changed, 5 insertions, 2 deletions
diff --git a/firmware/target/arm/imx233/dma-imx233.c b/firmware/target/arm/imx233/dma-imx233.c
index eba41958a9..97001210d2 100644
--- a/firmware/target/arm/imx233/dma-imx233.c
+++ b/firmware/target/arm/imx233/dma-imx233.c
@@ -28,8 +28,8 @@
28void imx233_dma_init(void) 28void imx233_dma_init(void)
29{ 29{
30 /* Enable APHB and APBX */ 30 /* Enable APHB and APBX */
31 __REG_CLR(HW_APBH_CTRL0) = __BLOCK_CLKGATE | __BLOCK_SFTRST; 31 imx233_reset_block(&HW_APBH_CTRL0);
32 __REG_CLR(HW_APBX_CTRL0) = __BLOCK_CLKGATE | __BLOCK_SFTRST; 32 imx233_reset_block(&HW_APBX_CTRL0);
33} 33}
34 34
35void imx233_dma_reset_channel(unsigned chan) 35void imx233_dma_reset_channel(unsigned chan)
diff --git a/firmware/target/arm/imx233/dma-imx233.h b/firmware/target/arm/imx233/dma-imx233.h
index bb88a746d0..c0727a51e1 100644
--- a/firmware/target/arm/imx233/dma-imx233.h
+++ b/firmware/target/arm/imx233/dma-imx233.h
@@ -152,6 +152,9 @@ struct apb_dma_command_t
152#define HW_APB_CHx_SEMA__PHORE_BM 0xff0000 152#define HW_APB_CHx_SEMA__PHORE_BM 0xff0000
153#define HW_APB_CHx_SEMA__PHORE_BP 16 153#define HW_APB_CHx_SEMA__PHORE_BP 16
154 154
155/* A single descriptor cannot transfer more than 2^16 bytes */
156#define IMX233_MAX_SINGLE_DMA_XFER_SIZE (1 << 16)
157
155void imx233_dma_init(void); 158void imx233_dma_init(void);
156void imx233_dma_reset_channel(unsigned chan); 159void imx233_dma_reset_channel(unsigned chan);
157/* only apbh channel have clkgate control */ 160/* only apbh channel have clkgate control */