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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.