summaryrefslogtreecommitdiff
path: root/firmware/target/arm
diff options
context:
space:
mode:
authorAmaury Pouly <amaury.pouly@gmail.com>2013-09-18 13:03:31 +0200
committerAmaury Pouly <amaury.pouly@gmail.com>2013-09-18 13:17:19 +0200
commitb4c1bb021489412f6156bf859002f11052c8d0a9 (patch)
tree2f7f2b15e0efece92c76e9c1a84bdfcb81c5d3c3 /firmware/target/arm
parent27433076e9db3d47556a346a589bace52977f864 (diff)
downloadrockbox-b4c1bb021489412f6156bf859002f11052c8d0a9.tar.gz
rockbox-b4c1bb021489412f6156bf859002f11052c8d0a9.zip
imx233: fix block reset code
Change-Id: I5fbc76315a651c91b278e1c7dc6cb49b7e00d9ad
Diffstat (limited to 'firmware/target/arm')
-rw-r--r--firmware/target/arm/imx233/system-imx233.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/firmware/target/arm/imx233/system-imx233.c b/firmware/target/arm/imx233/system-imx233.c
index fd9ddf0ffc..3f751a8aa5 100644
--- a/firmware/target/arm/imx233/system-imx233.c
+++ b/firmware/target/arm/imx233/system-imx233.c
@@ -158,6 +158,11 @@ bool imx233_us_elapsed(uint32_t ref, unsigned us_delay)
158 158
159void imx233_reset_block(volatile uint32_t *block_reg) 159void imx233_reset_block(volatile uint32_t *block_reg)
160{ 160{
161 /* deassert reset and clock gate */
162 __REG_CLR(*block_reg) = __BLOCK_SFTRST;
163 while(*block_reg & __BLOCK_SFTRST);
164 __REG_CLR(*block_reg) = __BLOCK_CLKGATE;
165 while(*block_reg & __BLOCK_CLKGATE);
161 /* soft-reset */ 166 /* soft-reset */
162 __REG_SET(*block_reg) = __BLOCK_SFTRST; 167 __REG_SET(*block_reg) = __BLOCK_SFTRST;
163 /* make sure block is gated off */ 168 /* make sure block is gated off */