summaryrefslogtreecommitdiff
path: root/drivers/systemace.c
diff options
context:
space:
mode:
authorMichal Simek <monstr@monstr.eu>2007-04-21 21:07:22 +0200
committerMichal Simek <monstr@monstr.eu>2007-04-21 21:07:22 +0200
commit32556443840f127170e4baa8bdd5b567039f6c36 (patch)
tree97277627f784b06c0514f110d6c77ad2f2472d43 /drivers/systemace.c
parent0643631aa1036cd746bf5d15f5a34bc7bc01ea4f (diff)
downloadu-boot-imx-32556443840f127170e4baa8bdd5b567039f6c36.zip
u-boot-imx-32556443840f127170e4baa8bdd5b567039f6c36.tar.gz
u-boot-imx-32556443840f127170e4baa8bdd5b567039f6c36.tar.bz2
[PATCH] SystemACE support for Microblaze
Diffstat (limited to 'drivers/systemace.c')
-rw-r--r--drivers/systemace.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/systemace.c b/drivers/systemace.c
index 3848d9c..c9fd5f1 100644
--- a/drivers/systemace.c
+++ b/drivers/systemace.c
@@ -211,10 +211,16 @@ static unsigned long systemace_read(int dev, unsigned long start,
/* Write sector count | ReadMemCardData. */
ace_writew((trans & 0xff) | 0x0300, 0x14);
+/*
+ * For FPGA configuration via SystemACE is reset unacceptable
+ * CFGDONE bit in STATUSREG is not set to 1.
+ */
+#ifndef SYSTEMACE_CONFIG_FPGA
/* Reset the configruation controller */
val = ace_readw(0x18);
val |= 0x0080;
ace_writew(val, 0x18);
+#endif
retry = trans * 16;
while (retry > 0) {