[patch][5/5] powerpc V2: Add the general support for Embedded Floating-Point instructions

Kumar Gala galak at kernel.crashing.org
Fri Feb 9 16:28:33 EST 2007


On Feb 8, 2007, at 11:15 PM, Zhu Ebony-r57400 wrote:

>
>>>>> diff --git a/arch/powerpc/kernel/head_fsl_booke.S b/arch/powerpc/
>>>>> kernel/head_fsl_booke.S index 66877bd..0d05db0 100644
>>>>> --- a/arch/powerpc/kernel/head_fsl_booke.S
>>>>> +++ b/arch/powerpc/kernel/head_fsl_booke.S
>>>>> @@ -705,7 +705,7 @@ #else
>>>>>  #endif /* CONFIG_SPE */
>>>>>
>>>>>  	/* SPE Floating Point Round */
>>>>> -	EXCEPTION(0x2050, SPEFloatingPointRound, unknown_exception,
>>>>> EXC_XFER_EE)
>>>>> +	EXCEPTION(0x2050, SPEFloatingPointRound,
>>>>> SPEFloatingPointException_Round, EXC_XFER_EE)
>>>>>
>>>>>  	/* Performance Monitor */
>>>>>  	EXCEPTION(0x2060, PerformanceMonitor,
>>>>> performance_monitor_exception, EXC_XFER_STD) @@ -840,6 +840,8 @@
>>>>> load_up_spe:
>>>>>  	oris	r5,r5,MSR_SPE at h
>>>>>  	mtmsr	r5			/* enable use of SPE now */
>>>>>  	isync
>>>>> +	li	r5,(SPEFSCR_FINVE | SPEFSCR_FDBZE | SPEFSCR_FUNFE |
>>>>> SPEFSCR_FOVFE)
>>>>> +	mtspr   SPRN_SPEFSCR,r5
>>>>
>>>> We should do this via INIT_THREAD, is there a reason that
>> you want to
>>>> set these always?
>>>
>>> I just thought it's the first time that an SPE instruction is
>>> encountered, so I enable the exceptions here.
>>
>> Lets do this via INIT_THREAD instead, its cleaner. (just
>> remember to add the proper ifdef protection for SPE_IEEE
>
> Talking about INIT_THREAD, I'm wondering where is the best place to
> enble the exceptions? Please advice!

What's the issue with enabling via INIT_THREAD?  am I missing something?

> And also, I will put all of your other suggestions into next patches.
> Thank you!

Ok.



More information about the Linuxppc-dev mailing list