Subject: Re: [PATCH v2] PowerPC: kernel: compiling issue, make additional room in exception vector area

From: Chen Gang <[email-masked]>
Date: Fri, 26 Apr 2013 11:25:16 +0800

On 2013年04月26日 11:08, Mike Qiu wrote:
> 于 2013/4/26 10:06, Chen Gang 写道:
>> On 2013年04月26日 10:03, Mike Qiu wrote:
>>> �� 2013/4/26 9:36, Chen Gang д��:
>>>>> On 2013��04��26�� 09:18, Chen Gang wrote:
>>>>>>> On 2013��04��26�� 09:06, Chen Gang wrote:
>>>>>>>>>>> CFAR is the Come From Register.  It saves the location of the
>>>>>>>>>>> last
>>>>>>>>>>>>> branch and is hence overwritten by any branch.
>>>>>>>>>>>>>
>>>>>>>>> Do we process it just like others done (e.g. 0x300, 0xe00,
>>>>>>>>> 0xe20 ...) ?
>>>>>>>>>     . = 0x900
>>>>>>>>>     .globl decrementer_pSeries
>>>>>>>>> decrementer_pSeries:
>>>>>>>>>       HMT_MEDIUM_PPR_DISCARD
>>>>>>>>>     SET_SCRATCH0(r13)
>>>>>>>>>     b decrementer_pSeries_0
>>>>>>>>>
>>>>>>>>>     ...
>>>>>>>>>
>>>>>>>>>
>>>>> Oh, it seems EXCEPTION_PROLOG_1 will save the regesters which related
>>>>> with CFAR, so I think need move EXCEPTION_PROLOG_1 to near 0x900.
>>> I will try your diff V2, to see if the machine can boot up
>> OK, thanks. (hope it can work)
> It seems that the machine can be bootup in powernv mode, but I'm not
> sure if my machine call that module.
> 
> At lease my machine can boot up

Thank you for your information !

I have checked the disassemble by powerpc64-linux-gnu-objdump, it seems
all we have done for 0x900 is almost like the original done for 0x200.

I am just learning about the CFAR (google it), And I plan to wait for a
day, if all things go smoothly, I will send patch v3.

:-)

-- 
Chen Gang

Asianux Corporation