From: Paolo Bonzini <pbonzini@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: "Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
"Richard Henderson" <rth@twiddle.net>,
qemu-devel@nongnu.org, "Andreas Färber" <afaerber@suse.de>
Subject: Re: [Qemu-devel] [PATCH 00/35] hw/ reorganization, part 2
Date: Wed, 20 Mar 2013 01:00:28 +0100 [thread overview]
Message-ID: <5148FC1C.9040001@redhat.com> (raw)
In-Reply-To: <CAFEAcA984ZTz4dzimKNkrLw_Dni=i+kJLY40a=5sgSPnaCfwCg@mail.gmail.com>
Il 20/03/2013 00:44, Peter Maydell ha scritto:
> On 19 March 2013 23:35, Paolo Bonzini <pbonzini@redhat.com> wrote:
>> > Il 19/03/2013 23:34, Peter Maydell ha scritto:
>>> >> On 19 March 2013 22:23, Paolo Bonzini <pbonzini@redhat.com> wrote:
>>>> >>> So, okay to put these in hw/arm and then I'll work on patches moving
>>>> >>> cpu_arm_init to a*mpcore.c?
>>> >>
>>> >> Wrong way round. If you can't put the cpu_arm_init into the a*mpcore
>>> >> in a way that doesn't make you want to put them in hw/arm/ then
>>> >> it should wait until we've QOMified the CPU cores sufficiently
>>> >> that we can do it properly.
>> >
>> > Does that include calling the CPU constructor something else than
>> > cpu_arm_init (which is defined in target-arm/)? For me that would be
>> > enough to put it in hw/arm.
> The CPU should be created (and thus initialised and realised) the same
> way as any other QOM object or device; the containers shouldn't need
> to call cpu_arm_init directly.
ARM is already quite good in that respect. However, until all
architectures are converted cpu_*_init needs to remain because of
user-mode targets (where the CPUs are created by common code, there is
no board to encapsulate the target-specific differences). IMHO waiting
for the demise of cpu_*_init is putting the cart before the horse, or
another similar proverb.
(Also, I don't see much difference between using a function in
target-ARCH and using a TYPE_FOO define from target-ARCH. They are the
same thing masked through RTTI. hw/ARCH should really be the bridge
between target-ARCH and hw/everything-else, and a*mpcore.c fits in that
description).
Paolo
next prev parent reply other threads:[~2013-03-20 0:00 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-18 17:34 [Qemu-devel] [PATCH 00/35] hw/ reorganization, part 2 Paolo Bonzini
2013-03-18 17:34 ` [Qemu-devel] [PATCH 01/35] hw: move headers to include/ Paolo Bonzini
2013-03-18 17:34 ` [Qemu-devel] [PATCH 02/35] hw: make subdirectories for devices Paolo Bonzini
2013-03-18 17:34 ` [Qemu-devel] [PATCH 03/35] configure: fix TPM logic Paolo Bonzini
2013-03-19 16:03 ` Andreas Färber
2013-03-18 17:34 ` [Qemu-devel] [PATCH 04/35] tpm: reorganize headers and split hardware part Paolo Bonzini
2013-03-20 13:49 ` Corey Bryant
2013-03-20 14:55 ` Paolo Bonzini
2013-03-18 17:34 ` [Qemu-devel] [PATCH 05/35] hw: move another file to hw/alpha/ Paolo Bonzini
2013-03-18 17:34 ` [Qemu-devel] [PATCH 06/35] hw: move target-independent files to subdirectories Paolo Bonzini
2013-03-18 17:34 ` [Qemu-devel] [PATCH 07/35] hw: move virtio devices to hw/ subdirectories Paolo Bonzini
2013-03-18 17:34 ` [Qemu-devel] [PATCH 08/35] hw: make all of hw/ide/ configurable via default-configs/ Paolo Bonzini
2013-03-18 17:34 ` [Qemu-devel] [PATCH 09/35] hw: make all of hw/usb/ " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 10/35] hw: make all of hw/pci/ " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 11/35] hw: move watchdogs to hw/watchdog, configure " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 12/35] hw: move MC146818RTC to hw/timer/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 13/35] hw: move NICs to hw/net/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 14/35] hw: move block devices to hw/block/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 15/35] hw: move audio devices to hw/audio/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 16/35] hw: move display devices to hw/display/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 17/35] hw: move I2C controllers to hw/i2c/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 18/35] hw: move SSI controllers to hw/ssi/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 19/35] hw: move SCSI controllers to hw/scsi/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 20/35] hw: move more files to hw/xen/ Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 21/35] hw: move char devices to hw/char/, configure via default-configs/ Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 22/35] hw: move ISA bridges and devices to hw/isa/, configure with default-configs/ Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 23/35] hw: move timer devices to hw/timer/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 24/35] hw: move input devices to hw/input/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 25/35] hw: move SD/MMC devices to hw/sd/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 26/35] hw: move PCI bridges to hw/pci/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 27/35] hw: move VFIO and ivshmem to hw/pci/ Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 28/35] hw: move DMA controllers to hw/dma/, configure with default-configs/ Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 29/35] hw: move interrupt controllers to hw/intc/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 30/35] hw: move GPIO interfaces to hw/gpio/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 31/35] hw: move NVRAM interfaces to hw/nvram/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 32/35] hw: move other devices to hw/misc/, " Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 33/35] arm: move remaining files to hw/arm/ Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 34/35] MAINTAINERS: update for source code movement Paolo Bonzini
2013-03-18 17:35 ` [Qemu-devel] [PATCH 35/35] hw: move private headers to hw/ subdirectories Paolo Bonzini
2013-03-18 17:38 ` [Qemu-devel] [PATCH 00/35] hw/ reorganization, part 2 Peter Maydell
2013-03-18 18:04 ` Paolo Bonzini
2013-03-18 18:11 ` Peter Maydell
2013-03-18 18:16 ` Paolo Bonzini
2013-03-18 18:17 ` Peter Maydell
2013-03-18 20:05 ` Paolo Bonzini
2013-03-18 20:21 ` Peter Maydell
2013-03-19 9:26 ` Paolo Bonzini
2013-03-19 10:10 ` Peter Maydell
2013-03-19 10:27 ` Paolo Bonzini
2013-03-19 10:32 ` Peter Maydell
2013-03-19 22:23 ` Paolo Bonzini
2013-03-19 22:34 ` Peter Maydell
2013-03-19 23:35 ` Paolo Bonzini
2013-03-19 23:44 ` Peter Maydell
2013-03-20 0:00 ` Paolo Bonzini [this message]
2013-03-20 10:30 ` Peter Maydell
2013-03-20 11:01 ` Paolo Bonzini
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=5148FC1C.9040001@redhat.com \
--to=pbonzini@redhat.com \
--cc=afaerber@suse.de \
--cc=edgar.iglesias@gmail.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
/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).