[PATCH v2 1/2] powerpc/e500: make load_up_spe a normal fuction
Scott Wood
scottwood at freescale.com
Thu Mar 8 04:08:12 EST 2012
On 03/07/2012 07:56 AM, Alexander Graf wrote:
> On 03/01/2012 02:20 AM, Olivia Yin wrote:
>> From: Liu Yu<yu.liu at freescale.com>
>>
>> So that we can call it when improving SPE switch like book3e did for
>> fp switch.
>
> Timur / Scott, can you please (n)ack this one?
ACK, though as it touches non-KVM code it'd be nice to get an ack from
Kumar.
-Scott
>
> Alex
>
>> Signed-off-by: Liu Yu<yu.liu at freescale.com>
>> Signed-off-by: Olivia Yin<hong-hua.yin at freescale.com>
>> ---
>> v2: add Signed-off-by
>>
>> arch/powerpc/kernel/head_fsl_booke.S | 23 ++++++-----------------
>> 1 files changed, 6 insertions(+), 17 deletions(-)
>>
>> diff --git a/arch/powerpc/kernel/head_fsl_booke.S
>> b/arch/powerpc/kernel/head_fsl_booke.S
>> index d5d78c4..c96e025 100644
>> --- a/arch/powerpc/kernel/head_fsl_booke.S
>> +++ b/arch/powerpc/kernel/head_fsl_booke.S
>> @@ -539,8 +539,10 @@ interrupt_base:
>> /* SPE Unavailable */
>> START_EXCEPTION(SPEUnavailable)
>> NORMAL_EXCEPTION_PROLOG
>> - bne load_up_spe
>> - addi r3,r1,STACK_FRAME_OVERHEAD
>> + beq 1f
>> + bl load_up_spe
>> + b fast_exception_return
>> +1: addi r3,r1,STACK_FRAME_OVERHEAD
>> EXC_XFER_EE_LITE(0x2010, KernelSPE)
>> #else
>> EXCEPTION(0x2020, SPEUnavailable, unknown_exception, EXC_XFER_EE)
>> @@ -743,7 +745,7 @@ tlb_write_entry:
>> /* Note that the SPE support is closely modeled after the AltiVec
>> * support. Changes to one are likely to be applicable to the
>> * other! */
>> -load_up_spe:
>> +_GLOBAL(load_up_spe)
>> /*
>> * Disable SPE for the task which had SPE previously,
>> * and save its SPE registers in its thread_struct.
>> @@ -791,20 +793,7 @@ load_up_spe:
>> subi r4,r5,THREAD
>> stw r4,last_task_used_spe at l(r3)
>> #endif /* !CONFIG_SMP */
>> - /* restore registers and return */
>> -2: REST_4GPRS(3, r11)
>> - lwz r10,_CCR(r11)
>> - REST_GPR(1, r11)
>> - mtcr r10
>> - lwz r10,_LINK(r11)
>> - mtlr r10
>> - REST_GPR(10, r11)
>> - mtspr SPRN_SRR1,r9
>> - mtspr SPRN_SRR0,r12
>> - REST_GPR(9, r11)
>> - REST_GPR(12, r11)
>> - lwz r11,GPR11(r11)
>> - rfi
>> + blr
>>
>> /*
>> * SPE unavailable trap from kernel - print a message, but let
>
> --
> To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
More information about the Linuxppc-dev
mailing list