qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] U-Boot patch for qemu -M mips


From: Thiemo Seufer
Subject: Re: [Qemu-devel] U-Boot patch for qemu -M mips
Date: Wed, 3 Oct 2007 14:37:06 +0100
User-agent: Mutt/1.5.16 (2007-06-11)

Vlad Lungu wrote:
[snip]
>>>  +long int initdram(int board_type)
>>>  +{
>>>  +       /* Sdram is setup by assembler code */
>>>  +       /* If memory could be changed, we should return the true value 
>>> here */
>>>  +       return MEM_SIZE*1024*1024;
>>>     
>>
>> Qemu gets the amount of RAM passed via a command line switch, the
>> qemu-mips emulation sets up a Linux kernel like "command line" in
>> memory where u-boot could parse it from.
>>
>>   
> Does it, or just when you pass -kernel to it? I'll check.

Hm, you are right, it does that only for -kernel. Would it make sense
to change that in Qemu?

Since the mips_r4k machine doesn't correspond to any real hardware we
have a bit of leeway with the "hardware" design.

>>>  +}
>>>  +
>>>  +
>>>  +int checkboard (void)
>>>  +{
>>>  +       u32 proc_id;
>>>  +
>>>  +       proc_id = read_32bit_cp0_register(CP0_PRID);
>>>  +
>>>  +       switch (proc_id >> 24) {
>>>  +       default:
>>>  +               printf ("Unsupported cpu %d, proc_id=0x%x\n", proc_id >> 
>>> 24, proc_id);
>>>  +       }
>>>  +
>>>  +       return 0;
>>>  +}
>>>     
>>
>> Huh? What is this code good for?
>>
>>   
> Checking for the type of board, I suppose :-)  I think all BSPs have it and 
> it's called early in the boot process. I could either do only a return 0 or 
> actually decode CP0_PRID and print something meaningful, if Qemu sets it to 
> something sensible. Or just print a nice banner.

As it is, this code prints a nice "Unsupported CPU" banner no matter what
(and proceeds anyway instead of bailing out).

Latest CVS Qemu supports a number of different CPUs (see the -cpu switch),
the default for 32 bit is a 24Kf, and for 64 bit a R4000.


Thiemo




reply via email to

[Prev in Thread] Current Thread [Next in Thread]