diff options
| author | Michael Sevakis <jethead71@rockbox.org> | 2010-05-15 15:51:47 +0000 |
|---|---|---|
| committer | Michael Sevakis <jethead71@rockbox.org> | 2010-05-15 15:51:47 +0000 |
| commit | 90ea991dff11bcb3cfc411d895115669ace8e636 (patch) | |
| tree | 28e77265a002da2a54a47a3bc45e8dbb92ea0c36 /firmware/thread.c | |
| parent | 601fd3c3af054b1be00395d8df412314c4eb8940 (diff) | |
| download | rockbox-90ea991dff11bcb3cfc411d895115669ace8e636.zip rockbox-90ea991dff11bcb3cfc411d895115669ace8e636.tar.gz rockbox-90ea991dff11bcb3cfc411d895115669ace8e636.tar.bz2 rockbox-90ea991dff11bcb3cfc411d895115669ace8e636.tar.xz | |
i.MX31: Issue some NOP's immediately after MCR WFI to prevent premature execution of subsequent code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26058 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/thread.c')
| -rw-r--r-- | firmware/thread.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/firmware/thread.c b/firmware/thread.c index d3031d5..54d966f 100644 --- a/firmware/thread.c +++ b/firmware/thread.c @@ -752,7 +752,10 @@ static void core_thread_init(unsigned int core) static inline void core_sleep(void) { asm volatile ( - "mcr p15, 0, %0, c7, c0, 4" /* Wait for interrupt */ + "mcr p15, 0, %0, c7, c0, 4 \n" /* Wait for interrupt */ +#if CONFIG_CPU == IMX31L + "nop\n nop\n nop\n nop\n nop\n" /* Clean out the pipes */ +#endif : : "r"(0) ); enable_irq(); |