diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2005-06-15 09:00:12 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2005-10-29 14:31:23 -0400 |
commit | 02416dcf5a94af34bcd28b4baf25bbbf399d8136 (patch) | |
tree | 1906c4266d4e28ef0b13d0579a145603dcbcff1b /include/asm-mips/war.h | |
parent | aac8aa7717a23a9bf8740dbfb59755b1d62f04bf (diff) |
Redo RM9000 workaround which along with other DSP ASE changes was
causing some headache for debuggers knowing about signal frames.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'include/asm-mips/war.h')
-rw-r--r-- | include/asm-mips/war.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/include/asm-mips/war.h b/include/asm-mips/war.h index 04ee53b34c2e..ad374bd3f130 100644 --- a/include/asm-mips/war.h +++ b/include/asm-mips/war.h | |||
@@ -177,6 +177,17 @@ | |||
177 | #endif | 177 | #endif |
178 | 178 | ||
179 | /* | 179 | /* |
180 | * The RM9000 has a bug (though PMC-Sierra opposes it being called that) | ||
181 | * where invalid instructions in the same I-cache line worth of instructions | ||
182 | * being fetched may case spurious exceptions. | ||
183 | */ | ||
184 | #if defined(CONFIG_MOMENCO_JAGUAR_ATX) || defined(CONFIG_MOMENCO_OCELOT_3) || \ | ||
185 | defined(CONFIG_PMC_YOSEMITE) | ||
186 | #define ICACHE_REFILLS_WORKAROUND_WAR 1 | ||
187 | #endif | ||
188 | |||
189 | |||
190 | /* | ||
180 | * ON the R10000 upto version 2.6 (not sure about 2.7) there is a bug that | 191 | * ON the R10000 upto version 2.6 (not sure about 2.7) there is a bug that |
181 | * may cause ll / sc and lld / scd sequences to execute non-atomically. | 192 | * may cause ll / sc and lld / scd sequences to execute non-atomically. |
182 | */ | 193 | */ |
@@ -187,6 +198,9 @@ | |||
187 | /* | 198 | /* |
188 | * Workarounds default to off | 199 | * Workarounds default to off |
189 | */ | 200 | */ |
201 | #ifndef ICACHE_REFILLS_WORKAROUND_WAR | ||
202 | #define ICACHE_REFILLS_WORKAROUND_WAR 0 | ||
203 | #endif | ||
190 | #ifndef R4600_V1_INDEX_ICACHEOP_WAR | 204 | #ifndef R4600_V1_INDEX_ICACHEOP_WAR |
191 | #define R4600_V1_INDEX_ICACHEOP_WAR 0 | 205 | #define R4600_V1_INDEX_ICACHEOP_WAR 0 |
192 | #endif | 206 | #endif |