summaryrefslogtreecommitdiff
path: root/include/asm-ppc
diff options
context:
space:
mode:
authorHaiying Wang <Haiying.Wang@freescale.com>2007-02-21 16:52:31 +0100
committerStefan Roese <sr@denx.de>2007-02-21 16:52:31 +0100
commit3a197b2fe49d6fa03978e60af2394efe9c70b527 (patch)
tree829eea16bc1c69fbf27545788bb104cda033f3e8 /include/asm-ppc
parentda04995c7dc6772013a9a0dc5c767f190c402478 (diff)
downloadu-boot-imx-3a197b2fe49d6fa03978e60af2394efe9c70b527.zip
u-boot-imx-3a197b2fe49d6fa03978e60af2394efe9c70b527.tar.gz
u-boot-imx-3a197b2fe49d6fa03978e60af2394efe9c70b527.tar.bz2
[PATCH v3] Add sync to ensure flash_write_cmd is fully finished
Some CPUs like PPC, BLACKFIN need sync() to ensure cfi flash write command is fully finished. The sync() is defined in each CPU's io.h file. For those CPUs which do not need sync for now, a dummy sync() is defined in their io.h as well. Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
Diffstat (limited to 'include/asm-ppc')
-rw-r--r--include/asm-ppc/io.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/include/asm-ppc/io.h b/include/asm-ppc/io.h
index 8e5fe11..bbc9ba0 100644
--- a/include/asm-ppc/io.h
+++ b/include/asm-ppc/io.h
@@ -95,8 +95,15 @@ extern void _outsl_ns(volatile u32 *port, const void *buf, int nl);
* Acts as a barrier to ensure all previous I/O accesses have
* completed before any further ones are issued.
*/
-#define eieio() __asm__ __volatile__ ("eieio" : : : "memory");
-#define sync() __asm__ __volatile__ ("sync" : : : "memory");
+static inline void eieio(void)
+{
+ __asm__ __volatile__ ("eieio" : : : "memory");
+}
+
+static inline void sync(void)
+{
+ __asm__ __volatile__ ("sync" : : : "memory");
+}
/* Enforce in-order execution of data I/O.
* No distinction between read/write on PPC; use eieio for all three.