From: Anthony Liguori <anthony@codemonkey.ws>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: Blue Swirl <blauwirbel@gmail.com>,
Chris Wright <chrisw@redhat.com>,
Markus Armbruster <armbru@redhat.com>,
kvm@vger.kernel.org, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] KVM call minutes for Feb 8
Date: Thu, 10 Feb 2011 11:13:23 +0100 [thread overview]
Message-ID: <4D53BA43.2000708@codemonkey.ws> (raw)
In-Reply-To: <AANLkTi=76aE8A5K8kRToTEyp=yvWP27w0z3Cgt5TShPa@mail.gmail.com>
On 02/10/2011 10:04 AM, Peter Maydell wrote:
> On 10 February 2011 08:36, Anthony Liguori<anthony@codemonkey.ws> wrote:
>
>> On 02/10/2011 09:16 AM, Peter Maydell wrote:
>>
>>> On 10 February 2011 07:47, Anthony Liguori<anthony@codemonkey.ws> wrote:
>>>
>>>> 2) get rid of the entire concept of machines. Creating a i440fx is
>>>> essentially equivalent to creating a bare machine.
>>>>
>>> Does that make any sense for anything other than target-i386?
>>> The concept of a machine model seems a pretty obvious one
>>> for ARM boards, for instance, and I'm not sure we'd gain much
>>> by having i386 be different to the other architectures...
>>>
>> Yes, it makes a lot of sense, I just don't know the component names as well
>> so bear with me :-)
>>
>> There are two types of Versatile machines today, Versatile/AB and
>> Versatile/PB. They are both made with the same core, ARM926EJ-S, with
>> different expansions.
>>
>> So you would model arm926ej-s as the chipset and then build up the machines
>> by modifying parameters of the chipset (like the board id) and/or adding
>> different components on top of it.
>>
> Er, ARM926 is the CPU, it's not a chipset. The board ID is definitely
> not a property of an ARM926, it's a property of the board (clue is in
> the name :-)). I don't think versatile boards have a "chipset" really...
>
As I said, I'm not well versed in the component names in ARM.
But that said, an actual processor doesn't connect directly to a bunch
of devices. It almost always go through some chipset and that chipset
implements a lot of functionality typically.
I think the name of the component I'm trying to refer to PL300 which I
believe is the Northbridge used for the Versatile boards.
> In my understanding the "machine" is the thing that says "I need a
> 926, and an MMC controller at this address, and some UARTS,
> and..." ie it is the thing that does the "modifying parameters"
> and "adding different components". So if we'd still be doing that
> I don't see how we've "got rid of the concept". I guess I'm missing
> the point somehow.
>
A machine today is basically the northbridge, southbridge, plus a bunch
of default components to make the virtual hardware useful.
I'm suggesting that we model a proper northbridge/southbridge.
>> A good way to think about what I'm proposing is that machine->init really
>> should be a constructor for a device object.
>>
> If you mean that you want machines to be implemented under the
> hood as a single huge "device" you can only have one of that spans
> the entire memory map, well I guess that's an implementation
> detail. But conceptually machines really do exist, and we definitely
> still want users to be able to say "I want a beagle machine; I want
> a versatile; I want an n900".
>
An n900 is a very specific hardware configuration that is best
represented by some sort of configuration file vs. something hard coded
in QEMU.
The question is, what level of component modelling do we need to do in
order to make it practical to create such configurations from a file.
Regards,
Anthony Liguori
> -- PMM
>
next prev parent reply other threads:[~2011-02-10 10:13 UTC|newest]
Thread overview: 79+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-08 15:55 [Qemu-devel] KVM call minutes for Feb 8 Chris Wright
2011-02-08 16:14 ` [Qemu-devel] " Stefan Hajnoczi
2011-02-08 16:39 ` [Qemu-devel] " Anthony Liguori
2011-02-08 17:13 ` Markus Armbruster
2011-02-08 19:02 ` Peter Maydell
2011-02-08 21:11 ` Anthony Liguori
2011-02-09 8:11 ` Markus Armbruster
2011-02-09 8:20 ` Peter Maydell
2011-02-09 9:02 ` Markus Armbruster
2011-02-08 19:30 ` Alexander Graf
2011-02-08 19:30 ` Aurelien Jarno
2011-02-09 8:23 ` Markus Armbruster
2011-02-09 10:43 ` Anthony Liguori
2011-02-09 17:38 ` Blue Swirl
2011-02-08 21:12 ` Anthony Liguori
2011-02-09 8:01 ` Markus Armbruster
2011-02-09 10:31 ` Anthony Liguori
2011-02-09 12:28 ` Markus Armbruster
2011-02-09 14:44 ` Anthony Liguori
2011-02-09 17:48 ` Blue Swirl
2011-02-09 19:53 ` Anthony Liguori
2011-02-09 19:59 ` Anthony Liguori
2011-02-09 20:15 ` Blue Swirl
2011-02-10 7:47 ` Anthony Liguori
2011-02-10 8:16 ` Peter Maydell
2011-02-10 8:36 ` Anthony Liguori
2011-02-10 9:04 ` Peter Maydell
2011-02-10 10:13 ` Anthony Liguori [this message]
2011-02-10 10:38 ` Peter Maydell
2011-02-10 11:24 ` Gleb Natapov
2011-02-10 12:23 ` Anthony Liguori
2011-02-10 13:06 ` Peter Maydell
2011-02-10 19:17 ` Scott Wood
2011-02-10 19:22 ` Peter Maydell
2011-02-10 19:29 ` Scott Wood
2011-02-10 9:07 ` Gleb Natapov
2011-02-10 10:00 ` Anthony Liguori
2011-02-10 10:10 ` Gleb Natapov
2011-02-10 10:19 ` Anthony Liguori
2011-02-10 10:49 ` Gleb Natapov
2011-02-10 12:47 ` Anthony Liguori
2011-02-10 13:12 ` Gleb Natapov
2011-02-10 10:25 ` Avi Kivity
2011-02-10 11:13 ` Gleb Natapov
2011-02-10 12:51 ` Anthony Liguori
2011-02-10 13:00 ` Avi Kivity
2011-02-10 13:29 ` Gleb Natapov
2011-02-10 14:00 ` Anthony Liguori
2011-02-10 13:27 ` Gleb Natapov
2011-02-10 14:04 ` Anthony Liguori
2011-02-10 14:20 ` Gleb Natapov
2011-02-10 16:05 ` Anthony Liguori
2011-02-11 18:14 ` Blue Swirl
2011-02-13 9:24 ` Gleb Natapov
2011-02-13 15:31 ` Anthony Liguori
2011-02-13 19:37 ` Blue Swirl
2011-02-13 19:57 ` Anthony Liguori
2011-02-13 21:00 ` Blue Swirl
2011-02-13 22:42 ` Anthony Liguori
2011-02-14 17:31 ` Blue Swirl
2011-02-14 20:53 ` Anthony Liguori
2011-02-14 21:25 ` Blue Swirl
2011-02-14 21:47 ` Anthony Liguori
2011-02-15 17:11 ` Blue Swirl
2011-02-15 23:07 ` Anthony Liguori
2011-02-16 9:52 ` Gleb Natapov
2011-02-14 9:44 ` Paolo Bonzini
2011-02-10 10:29 ` Avi Kivity
2011-02-13 15:38 ` Anthony Liguori
2011-02-13 15:56 ` Avi Kivity
2011-02-13 16:56 ` Anthony Liguori
2011-02-13 18:08 ` Gleb Natapov
2011-02-13 19:38 ` Anthony Liguori
2011-02-14 10:23 ` Gleb Natapov
2011-02-13 21:24 ` Peter Maydell
2011-02-13 22:43 ` Anthony Liguori
2011-02-13 23:35 ` Peter Maydell
2011-02-13 15:39 ` Anthony Liguori
2011-02-11 17:54 ` Blue Swirl
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=4D53BA43.2000708@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=armbru@redhat.com \
--cc=blauwirbel@gmail.com \
--cc=chrisw@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=peter.maydell@linaro.org \
--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).