qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Paul Sokolovsky <pmiscml@gmail.com>
To: Paul Brook <paul@codesourcery.com>
Cc: qemu-devel@nongnu.org
Subject: Re[2]: [Qemu-devel] Config file support
Date: Tue, 24 Oct 2006 03:12:22 +0300	[thread overview]
Message-ID: <796615070.20061024031222@gmail.com> (raw)
In-Reply-To: <200610232129.53615.paul@codesourcery.com>

Hello Paul,

Monday, October 23, 2006, 11:29:52 PM, you wrote:

> On Monday 23 October 2006 21:01, Rob Landley wrote:
>> On Sunday 22 October 2006 2:27 pm, Paul Brook wrote:
>> > I've been considering a machine config file for a while, but haven't come
>> > up with a coherent way of representing everything yet.

   I'm glad this discussion was brought up on the list. And I'd like
to also bring back another related issue - what about providing
"plugin" system for device (chip) implementation, in addition to
flexible-format machine config allowing to construct "virtual boards"
out of them?

>>
>> Do you at least have a list of everything that needs to be represented?  (I
>> have a list but am fairly certain it's not complete.)

> Not really. I guess a generic key/value pair is sufficient for most things
> (base address, model number, etc).

> The trickier cases are where devices refer to each other: PCI, usb, IRQ lines,
> DMA channels, etc. ie. anything where the existing _init function returns a
> value.
> I guess you could use the same key/value mechanism, and allow the value to be
> an "object".

  Yes, machine config apparently would be a hierarchical structure,
with cross-references. And well, there's an industrial standard to
represent that - XML.

> The really OTT method is to embed a python interpreter or something and do the
> machine init that way. I'm not seriously suggesting that though.

  Well, I guess, machine configuration really a declarative information,
and XML should be enough. But it would be really nice to have Python
bindings to implement device plugin, especially for "boring" hardware
like, say, battery controllers.

  What about config like:

<qemu>

  <devices>
    <deviceDef type="builtin" name="pxa25x" impl="PXA25X" />
    <deviceDef type="builtin" name="ram" impl="RAM" />
    <deviceDef type="plugin"  name="w1ctrlr" impl="w1controller.so" />
    <deviceDef type="python"  name="ds2762" impl="ds2762.py" />
  </devices>

  <boards>
    <board name="pda">
      <device name="pxa25x">
        <param name="cpuid" value="0xaaaaaaaa" />
      </device>
      <device name="ram" addr="0xa0000000" size="32M" />
      <device id="w1" name="w1ctrlr" addr="0x10000000" size="16" irq="67" />
      <device name="ds2762" parent="w1">
        <param name="w1addr" value="2" />
      </device>
    </board>
  </boards>

</qemu>


> Paul


-- 
Best regards,
 Paul                            mailto:pmiscml@gmail.com

  parent reply	other threads:[~2006-10-24  0:12 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-10-20 17:55 [Qemu-devel] Config file support Chuck Brazie
2006-10-21  0:12 ` Johannes Schindelin
2006-10-21 10:00   ` Ricardo Almeida
2006-10-21 11:40     ` Stefan Weil
2006-10-22  9:51     ` Johannes Schindelin
2006-10-22 17:01       ` Flavio Visentin
2006-10-22 17:19         ` Martin Guy
2006-10-22 18:27           ` Paul Brook
2006-10-23  6:33             ` [Qemu-devel] " Antti P Miettinen
2006-10-23 20:01             ` [Qemu-devel] " Rob Landley
2006-10-23 20:29               ` Paul Brook
2006-10-23 22:22                 ` Rob Landley
2006-10-23 23:33                   ` Paul Brook
2006-10-24  9:04                     ` Rob Landley
2006-10-24 10:47                     ` Flavio Visentin
2006-10-24 12:05                       ` Christian MICHON
2006-10-24 16:46                         ` Blue Swirl
2006-10-24 20:38                           ` Christian MICHON
2006-10-24 23:32                       ` Rob Landley
2006-10-25  8:20                         ` Johannes Schindelin
2006-10-24  0:11                   ` andrzej zaborowski
2006-10-24  0:34                     ` Paul Brook
2006-10-24  0:12                 ` Paul Sokolovsky [this message]
2006-10-24  0:36                   ` Paul Brook
2006-10-24  1:38                     ` Re[2]: " Paul Sokolovsky
2006-10-24  2:31                       ` Paul Brook
2006-10-24  8:37                         ` Christian MICHON
2006-10-24 23:28                       ` Rob Landley
2006-10-25  0:18                         ` Re[2]: " Paul Sokolovsky
2006-10-25 15:01                           ` Paul Brook
2006-10-26 14:31                             ` Rob Landley
2006-10-27 20:00                               ` Re[2]: " Paul Sokolovsky
2006-10-27 19:33                             ` Paul Sokolovsky
2006-10-28  0:08                               ` Paul Brook
2006-10-28  1:46                                 ` Re[2]: " Paul Sokolovsky
2006-10-24 23:28                   ` Rob Landley
2006-10-21 18:00   ` David Baird

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=796615070.20061024031222@gmail.com \
    --to=pmiscml@gmail.com \
    --cc=paul@codesourcery.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).