diff options
Diffstat (limited to 'arch/blackfin/include/asm/context.S')
| -rw-r--r-- | arch/blackfin/include/asm/context.S | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/blackfin/include/asm/context.S b/arch/blackfin/include/asm/context.S index c0e630edfb9a..40d20b4a9b1f 100644 --- a/arch/blackfin/include/asm/context.S +++ b/arch/blackfin/include/asm/context.S | |||
| @@ -303,9 +303,14 @@ | |||
| 303 | RETI = [sp++]; | 303 | RETI = [sp++]; |
| 304 | RETS = [sp++]; | 304 | RETS = [sp++]; |
| 305 | 305 | ||
| 306 | #ifdef CONFIG_SMP | ||
| 307 | GET_PDA(p0, r0); | ||
| 308 | r0 = [p0 + PDA_IRQFLAGS]; | ||
| 309 | #else | ||
| 306 | p0.h = _irq_flags; | 310 | p0.h = _irq_flags; |
| 307 | p0.l = _irq_flags; | 311 | p0.l = _irq_flags; |
| 308 | r0 = [p0]; | 312 | r0 = [p0]; |
| 313 | #endif | ||
| 309 | sti r0; | 314 | sti r0; |
| 310 | 315 | ||
| 311 | sp += 4; /* Skip Reserved */ | 316 | sp += 4; /* Skip Reserved */ |
| @@ -352,4 +357,3 @@ | |||
| 352 | SYSCFG = [sp++]; | 357 | SYSCFG = [sp++]; |
| 353 | csync; | 358 | csync; |
| 354 | .endm | 359 | .endm |
| 355 | |||
