diff options
Diffstat (limited to 'arch/ppc/kernel/head_8xx.S')
-rw-r--r-- | arch/ppc/kernel/head_8xx.S | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/arch/ppc/kernel/head_8xx.S b/arch/ppc/kernel/head_8xx.S index 5a7a64e91fc5..eb18cadb3755 100644 --- a/arch/ppc/kernel/head_8xx.S +++ b/arch/ppc/kernel/head_8xx.S | |||
@@ -288,13 +288,11 @@ SystemCall: | |||
288 | * For the MPC8xx, this is a software tablewalk to load the instruction | 288 | * For the MPC8xx, this is a software tablewalk to load the instruction |
289 | * TLB. It is modelled after the example in the Motorola manual. The task | 289 | * TLB. It is modelled after the example in the Motorola manual. The task |
290 | * switch loads the M_TWB register with the pointer to the first level table. | 290 | * switch loads the M_TWB register with the pointer to the first level table. |
291 | * If we discover there is no second level table (the value is zero), the | 291 | * If we discover there is no second level table (value is zero) or if there |
292 | * plan was to load that into the TLB, which causes another fault into the | 292 | * is an invalid pte, we load that into the TLB, which causes another fault |
293 | * TLB Error interrupt where we can handle such problems. However, that did | 293 | * into the TLB Error interrupt where we can handle such problems. |
294 | * not work, so if we discover there is no second level table, we restore | 294 | * We have to use the MD_xxx registers for the tablewalk because the |
295 | * registers and branch to the error exception. We have to use the MD_xxx | 295 | * equivalent MI_xxx registers only perform the attribute functions. |
296 | * registers for the tablewalk because the equivalent MI_xxx registers | ||
297 | * only perform the attribute functions. | ||
298 | */ | 296 | */ |
299 | InstructionTLBMiss: | 297 | InstructionTLBMiss: |
300 | #ifdef CONFIG_8xx_CPU6 | 298 | #ifdef CONFIG_8xx_CPU6 |