Am 28.05.2012 11:43, schrieb guanxue...@mprc.pku.edu.cn:
>> Am 25.05.2012 13:29, schrieb Guan Xuetao:
>>> Signed-off-by: Guan Xuetao <g...@mprc.pku.edu.cn>
>>> ---
>>>  target-unicore32/cpu.c |   17 +++++++++++++----
>>>  target-unicore32/cpu.h |    2 +-
>>>  2 files changed, 14 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/target-unicore32/cpu.c b/target-unicore32/cpu.c
>>> index de63f58..62c0a22 100644
>>> --- a/target-unicore32/cpu.c
>>> +++ b/target-unicore32/cpu.c
>>> @@ -32,13 +32,16 @@ static void unicore_ii_cpu_initfn(Object *obj)
>>>      UniCore32CPU *cpu = UNICORE32_CPU(obj);
>>>      CPUUniCore32State *env = &cpu->env;
>>>
>>> -    env->cp0.c0_cpuid = 0x40010863;
>>> +    env->cp0.c0_cpuid = UC32_CPUID_UCV2;
>>
>> Please don't revert this change. I'll send you the patch to drop the
>> CPUID #defines instead.
> 
> But, the kernel need this CPUID to check whether it is a unicore32
> processor, and if check fail, the kernel will halt.

I'm not discussing about a guest kernel but about your source change
above: The UC32_CPUID_UC32 #define should go away, i.e. please ack
(today, if we want it in 1.1) and prepend my patch, and if the value is
wrong here it should be changed *here* and not in UC32_CPUID_UCV2.

If you're introducing new uses of UC32_CPUID_UCV2 elsewhere (e.g., for
register behavior) then that is a design fault and needs to be fixed.
Compare the copro series for target-arm, which gets rid of the
CPUID-based switches there.

Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg

Reply via email to