summaryrefslogtreecommitdiff
path: root/firmware
diff options
context:
space:
mode:
Diffstat (limited to 'firmware')
-rw-r--r--firmware/export/system.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/firmware/export/system.h b/firmware/export/system.h
index b1b5b025a9..121deafc7e 100644
--- a/firmware/export/system.h
+++ b/firmware/export/system.h
@@ -144,6 +144,8 @@ static inline unsigned long SWAB32(unsigned long value)
144 return value; 144 return value;
145} 145}
146 146
147#define invalidate_icache()
148
147#elif CONFIG_CPU == MCF5249 149#elif CONFIG_CPU == MCF5249
148#define HIGHEST_IRQ_LEVEL (7<<8) 150#define HIGHEST_IRQ_LEVEL (7<<8)
149static inline int set_irq_level(int level) 151static inline int set_irq_level(int level)
@@ -178,6 +180,12 @@ static inline unsigned long SWAB32(unsigned long value)
178 return (lo << 16) | hi; 180 return (lo << 16) | hi;
179} 181}
180 182
183static inline void invalidate_icache(void)
184{
185 asm volatile ("move.l #0x81000000,%d0\n"
186 "movec.l %d0,%cacr");
187}
188
181#elif CONFIG_CPU == TCC730 189#elif CONFIG_CPU == TCC730
182 190
183extern void* volatile interrupt_vector[16] __attribute__ ((section(".idata"))); 191extern void* volatile interrupt_vector[16] __attribute__ ((section(".idata")));
@@ -223,6 +231,8 @@ static inline unsigned long SWAB32(unsigned long value)
223 return (lo << 16) | hi; 231 return (lo << 16) | hi;
224} 232}
225 233
234#define invalidate_icache()
235
226#endif 236#endif
227#endif 237#endif
228 238