qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Vlad Lungu <vlad@comsys.ro>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] U-Boot patch for qemu -M mips
Date: Wed, 03 Oct 2007 16:49:19 +0300	[thread overview]
Message-ID: <47039DDF.7050004@comsys.ro> (raw)
In-Reply-To: <20071003133706.GM16772@networkno.de>

Thiemo Seufer wrote:
> 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?
>   
IDK.  Maybe I can probe the  RAM size in U-Boot , or if this does not 
work, put some info somewhere (RAM, register,
emulated DIP-dwitch), like RAM size, endianness of the CPU.
> 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).
>   
True, because it does not care much about this at the moment. Nor do I. 
But that can change.
> 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.
>
>   
I'll look into this and see what use can we make of CP0_PRID.

Vlad

  reply	other threads:[~2007-10-03 13:50 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-02 10:07 [Qemu-devel] U-Boot patch for qemu -M mips Vlad Lungu
2007-10-02 16:40 ` Thiemo Seufer
2007-10-03  8:29   ` Vlad Lungu
2007-10-03 13:37     ` Thiemo Seufer
2007-10-03 13:49       ` Vlad Lungu [this message]
2007-10-03 19:47         ` Thiemo Seufer
2007-10-04 10:52           ` Vlad Lungu
2007-10-04 11:43             ` Thiemo Seufer
2007-10-04 10:58               ` vlad
2007-10-04 13:26           ` [Qemu-devel] U-Boot patch for qemu -M mips TAKE 2 Vlad Lungu
2007-10-04 13:55             ` Wolfgang Denk
2007-10-04 16:33               ` Vlad Lungu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=47039DDF.7050004@comsys.ro \
    --to=vlad@comsys.ro \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).