From: Anthony Liguori <anthony@codemonkey.ws>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: Gleb Natapov <gleb@redhat.com>,
Jan Kiszka <jan.kiszka@siemens.com>,
qemu-devel <qemu-devel@nongnu.org>,
Markus Armbruster <armbru@redhat.com>,
Gerd Hoffmann <kraxel@redhat.com>,
"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
Paolo Bonzini <pbonzini@redhat.com>
Subject: Re: [Qemu-devel] [RFC] Plan for moving forward with QOM
Date: Fri, 16 Sep 2011 13:08:27 -0500 [thread overview]
Message-ID: <4E73909B.3050900@codemonkey.ws> (raw)
In-Reply-To: <CAFEAcA9aO99e-KYT5S2DtRqDej5JmvVgdCgu6+Gj-dmmMVm4Aw@mail.gmail.com>
On 09/16/2011 12:47 PM, Peter Maydell wrote:
> On 16 September 2011 17:33, Gleb Natapov<gleb@redhat.com> wrote:
>> On Thu, Sep 15, 2011 at 09:45:33PM +0100, Peter Maydell wrote:
>>> On 15 September 2011 21:29, Gleb Natapov<gleb@redhat.com> wrote:
>>>> 16650A is not a device. ISA card it resides on is a device.
>>>
>>> The 16550A is an encapsulated set of functionality with some
>>> well defined interfaces ("I provide a set of memory mapped
>>> registers", "I have an output gpio line (irq)"), which we
>>> need to be able to compose into other things (lots of models
>>> use a 16550A one way or another, not just the ISA serial card),
>>> connect up (ie connect that irq to an appropriate interrupt
>>> controller, map the registers in system memory or under ISA
>>> or whatever), and configure (eg specify the backend chardev).
>>>
>>> I don't think there's any difference at all between that
>>> and (say) the NE2000 PCI model, which also is encapsulated
>>> functionality with well defined interfaces that we need to
>>> be able to compose and connect and configure. We should be
>>> using the same implementation and abstractions for both
>>> cases.
>>>
>> IDE is another such device (it was ISA later converted to PCI).
>> As far as I understand your view of UART is the same as mine.
>> It is not a whole device, but only a part of it.
>
> If we have the same view of the UART then one of us is rather
> misunderstanding the other (could be me).
>
> I don't care whether you apply the label "device" to the
> UART, but I definitely want it to be exactly the same kind
> of QEMU "object", in terms of how you implement it and use it,
> as a PCI NE2000 model or an ISA serial card or an ARM-Cortex-A8
> CPU model or a "vexpress-a9" board model.
Exactly. This is what I dislike about qdev today. The UART (SerialState) is
not a DeviceState. That's a major problem for me.
There should be no different between IsaSerialState and SerialState in terms of
what they are and how you interact with them. Whether IsaSerialState should
even exist is a separate discussion that's really just a minor detail.
Regards,
Anthony Liguori
>
> As it happens, personally I think "device" is a pretty
> reasonable label to use for all these things, since we're going
> to use it anyway for the QEMU objects which happen to correspond
> to ISA cards or PCI cards or whatever.
>
> -- PMM
>
next prev parent reply other threads:[~2011-09-16 18:08 UTC|newest]
Thread overview: 88+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-14 18:04 [Qemu-devel] [RFC] Plan for moving forward with QOM Anthony Liguori
2011-09-14 18:49 ` Anthony Liguori
2011-09-14 19:30 ` Jan Kiszka
2011-09-14 19:42 ` Anthony Liguori
2011-09-14 21:15 ` Jan Kiszka
2011-09-14 22:11 ` Anthony Liguori
2011-09-15 13:43 ` Jan Kiszka
2011-09-15 14:11 ` Anthony Liguori
2011-09-15 16:38 ` Jan Kiszka
2011-09-15 18:01 ` Anthony Liguori
2011-09-16 10:12 ` Kevin Wolf
2011-09-16 13:00 ` Anthony Liguori
2011-09-14 20:00 ` Edgar E. Iglesias
2011-09-14 20:22 ` Anthony Liguori
2011-09-14 20:27 ` Edgar E. Iglesias
2011-09-14 20:37 ` Blue Swirl
2011-09-14 21:25 ` Anthony Liguori
2011-09-15 6:31 ` Gleb Natapov
2011-09-15 10:49 ` Stefan Hajnoczi
2011-09-15 13:08 ` Anthony Liguori
2011-09-15 13:17 ` Anthony Liguori
2011-09-15 14:23 ` Gleb Natapov
2011-09-16 14:46 ` John Williams
2011-09-16 16:10 ` Anthony Liguori
2011-09-17 1:11 ` Edgar E. Iglesias
2011-09-17 2:12 ` Anthony Liguori
2011-09-17 2:35 ` Edgar E. Iglesias
2011-09-15 13:57 ` Anthony Liguori
2011-09-15 14:14 ` Paolo Bonzini
2011-09-15 14:25 ` Gleb Natapov
2011-09-15 15:28 ` Anthony Liguori
2011-09-15 15:38 ` Gleb Natapov
2011-09-15 16:33 ` Anthony Liguori
2011-09-15 16:59 ` Gleb Natapov
2011-09-15 17:51 ` Anthony Liguori
2011-09-15 20:29 ` Gleb Natapov
2011-09-15 20:45 ` Peter Maydell
2011-09-15 21:15 ` Anthony Liguori
2011-09-16 16:33 ` Gleb Natapov
2011-09-16 17:47 ` Peter Maydell
2011-09-16 18:08 ` Anthony Liguori [this message]
2011-09-16 18:22 ` Gleb Natapov
2011-09-16 18:42 ` Anthony Liguori
2011-09-16 19:13 ` Gleb Natapov
2011-09-16 19:29 ` Anthony Liguori
2011-09-16 20:48 ` Gleb Natapov
2011-09-16 21:03 ` Anthony Liguori
2011-09-17 0:01 ` Edgar E. Iglesias
2011-09-16 18:18 ` Gleb Natapov
2011-09-15 20:50 ` Anthony Liguori
2011-09-16 16:47 ` Gleb Natapov
2011-09-17 0:48 ` Edgar E. Iglesias
2011-09-17 2:17 ` Anthony Liguori
2011-09-17 2:29 ` Anthony Liguori
2011-09-17 2:41 ` Edgar E. Iglesias
2011-09-15 6:47 ` Paolo Bonzini
2011-09-15 13:26 ` Anthony Liguori
2011-09-15 13:35 ` Paolo Bonzini
2011-09-15 13:54 ` Peter Maydell
2011-09-15 14:18 ` Anthony Liguori
2011-09-15 14:33 ` Paolo Bonzini
2011-09-15 14:48 ` Peter Maydell
2011-09-15 15:31 ` Anthony Liguori
2011-09-15 15:47 ` Paolo Bonzini
2011-09-15 20:23 ` Avi Kivity
2011-09-15 20:52 ` Anthony Liguori
2011-09-18 7:56 ` Avi Kivity
2011-09-18 14:00 ` Avi Kivity
2011-09-16 9:36 ` Gerd Hoffmann
2011-12-13 4:47 ` Paul Brook
2011-12-13 13:22 ` Anthony Liguori
2011-12-13 17:40 ` Paul Brook
2011-12-13 18:00 ` Anthony Liguori
2011-12-13 20:36 ` Paul Brook
2011-12-13 21:53 ` Anthony Liguori
2011-12-14 0:39 ` Paul Brook
2011-12-14 13:53 ` Anthony Liguori
2011-12-14 14:01 ` Avi Kivity
2011-12-14 14:11 ` Anthony Liguori
2011-12-14 14:35 ` Avi Kivity
2011-12-14 14:46 ` Anthony Liguori
2011-12-14 14:50 ` Avi Kivity
2011-12-15 18:59 ` Paul Brook
2011-12-15 19:12 ` Anthony Liguori
2011-12-15 21:28 ` Paul Brook
2011-12-16 2:08 ` Anthony Liguori
2011-12-16 5:11 ` Paul Brook
2011-12-14 9:11 ` Andreas Färber
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=4E73909B.3050900@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=armbru@redhat.com \
--cc=edgar.iglesias@gmail.com \
--cc=gleb@redhat.com \
--cc=jan.kiszka@siemens.com \
--cc=kraxel@redhat.com \
--cc=pbonzini@redhat.com \
--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).