qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "J. Mayer" <l_indien@magic.fr>
To: qemu-devel@nongnu.org
Cc: Milton Miller <miltonm@bga.com>, Aurelien Jarno <aurelien@aurel32.net>
Subject: Re: [Qemu-devel] I got a kernel booted under qemu-system-ppc !
Date: Sun, 21 Oct 2007 12:24:34 +0200	[thread overview]
Message-ID: <1192962274.16781.62.camel@rapid> (raw)
In-Reply-To: <200710210455.51059.rob@landley.net>


On Sun, 2007-10-21 at 04:55 -0500, Rob Landley wrote:
> On Saturday 20 October 2007 3:50:52 am J. Mayer wrote:
> > Sleep mode is currently implemented only for a few CPUs. I should add
> > all the currently emulated cores. For this, I would have to emulate the
> > HID registers, in most case, which is still not done.
> 
> Getting it to exit in response to a shut down attempt would be really nice 
> too.  (It may already do so, but I have no idea how to trigger it and neither 
> did Milton last I checked.)

Well, if it does not exit, that means that there should be something
emulated in the chipset to do so and that the Linux kernel just enter an
infinite loop instead of shuting down / reseting the board.

> > And you can get the list of all CPUs emulated by Qemu with the '-cpu ?'
> > switch.
> 
> I did that, but it -cpu ? gives output like:
> 
>   PowerPC 7448             PVR 80040201
>   PowerPC 7448v1.0         PVR 80040100
>   PowerPC 7448v1.1         PVR 80040101
>   PowerPC 7448v2.0         PVR 80040200
>   PowerPC 7448v2.1         PVR 80040201
> 
> I prefer the result of "-M ?" which makes it slightly clearer which field you 
> need to feed qemu as an argument.  (For the record, -cpu seems to want filed 
> $2 of the -cpu ? output.)  Also, that doesn't tell me what the differences 
> between any of them are.

The idea of showing the name of the model and the PVR (processor version
register) is that it can be useful to give Qemu a PVR instead of a name,
even if this possibility is not properly implemented in the commited
version. It's sometime more relevant to provide a PVR than a core name,
imho...
I will put a dump of the CPU features for all cores emulated by Qemu on
line soon.

> >From earlier research, I know that if you configure a toolchain for "7xx" all 
> major PowerPC variants except two will run that, it's more or less "-mcpu 
> 386" of the powerpc world.
>
> The two that won't run it (Motorola's 8xx and IBM's 4xx) are both embedded 
> subsets of powerpc that have had instructions removed, and thus need their 
> own toolchains.  (Of course those two removed DIFFERENT instructions, 
> sigh...)

Those two ones do not have any hardware floating point implemented and
lack the support of some optional instructions. If you want to compile
executables that would run on any PowerPC core, you have to use the
switch '-many' or '-mcom'. This is supposed to generate code that would
even run on the original RS/6000 architecture. The '-mppc' generates
code for 603/604 which should be a better PowerPC insns subset than the
750 one, for portability. If you want all programs to also run on
4xx/8xx/82xx, you may also add '-msoft-float' so no hardware floating
point instructions will be used.
But you may not care about those cores as they are used only in
microcontrollers so I need to implement at least a subset of their
internal devices to make them usable in the full-system emulation.

> My random and confused notes about various hardware platforms are 
> at "http://landley.net/ols/ols2007/platforms.txt", which has a largeish 
> section on ppc that probably makes sense to nobody but me. :)
> 
> I don't actually have any _background_ in embedded hardware.  Busybox, uClibc, 
> and qemu all dragged me into it, and I've been trying to pick things up as I 
> go along...
> 
> Rob
> 
> P.S.  I removed you from the CC: list because your ISP is still bouncing my 
> emails as spam, and I don't know if the list sends you a copy if you're cc'd.

Strange, my ISP does not tag your mails as spams, when I receive them.
But it's not a problem for me not to be CCed...

-- 
J. Mayer <l_indien@magic.fr>
Never organized

  reply	other threads:[~2007-10-21 11:00 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-19  0:12 [Qemu-devel] I got a kernel booted under qemu-system-ppc ! Rob Landley
2007-10-18 23:46 ` J. Mayer
2007-10-19 17:57   ` Milton Miller
2007-10-23  9:17     ` J. Mayer
2007-10-19  6:00 ` [Qemu-devel] " Milton Miller
2007-10-19 15:03 ` [Qemu-devel] " Aurelien Jarno
2007-10-19 15:19 ` Aurelien Jarno
2007-10-19 17:39   ` Jocelyn Mayer
2007-10-19 18:10     ` Milton Miller
2007-10-19 19:39     ` Aurelien Jarno
2007-10-19 20:33       ` Aurelien Jarno
2007-10-20  6:08         ` Rob Landley
2007-10-20  8:50           ` J. Mayer
2007-10-21  9:55             ` Rob Landley
2007-10-21 10:24               ` J. Mayer [this message]
2007-10-21 12:28                 ` J. Mayer
2007-10-21 22:37                 ` Rob Landley
2007-10-20 14:23       ` Aurelien Jarno
2007-10-20 14:49         ` Aurelien Jarno
2007-10-20 21:49           ` Aurelien Jarno
2007-10-21  9:01             ` J. Mayer
2007-10-20  7:52   ` Rob Landley
2007-10-20  9:03   ` J. Mayer
2007-10-20  9:42     ` Aurelien Jarno

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=1192962274.16781.62.camel@rapid \
    --to=l_indien@magic.fr \
    --cc=aurelien@aurel32.net \
    --cc=miltonm@bga.com \
    --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).