From: Markus Armbruster <armbru@redhat.com>
To: Alexey Kardashevskiy <aik@ozlabs.ru>
Cc: qemu-ppc@nongnu.org, qemu-devel@nongnu.org,
"Andreas Färber" <afaerber@suse.de>,
"Alexander Graf" <agraf@suse.de>
Subject: Re: [Qemu-devel] [PATCH] spapr-pci: enable adding PHB via -device
Date: Mon, 20 Jan 2014 16:27:15 +0100 [thread overview]
Message-ID: <87a9eqbrn0.fsf@blackfin.pond.sub.org> (raw)
In-Reply-To: <1389605349-1989-1-git-send-email-aik@ozlabs.ru> (Alexey Kardashevskiy's message of "Mon, 13 Jan 2014 20:29:09 +1100")
Alexey Kardashevskiy <aik@ozlabs.ru> writes:
> Recent changes introduced cannot_instantiate_with_device_add_yet
> and removed capability of adding yet another PCI host bridge via
> command line for SPAPR platform (POWERPC64 server).
Specifically:
commit 837d37167dc446af8a91189108b363c04609e296
Author: Markus Armbruster <armbru@redhat.com>
Date: Thu Nov 28 17:26:55 2013 +0100
sysbus: Set cannot_instantiate_with_device_add_yet
device_add plugs devices into suitable bus. For "real" buses, that
actually connects the device. For sysbus, the connections need to be
made separately, and device_add can't do that. The device would be
left unconnected, and could not possibly work.
Quite a few, but not all sysbus devices already set
cannot_instantiate_with_device_add_yet in their class init function.
Set it in their abstract base's class init function
sysbus_device_class_init(), and remove the now redundant assignments
from device class init functions.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Marcel Apfelbaum <marcel.a@redhat.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
Always good to point to specific commits in commit messages instead of
hand-waving "recent changes".
> This brings the capability back and puts SPAPR PHB into "bridge"
> category.
Look, a sysbus device that grabs the resources it needs from its init()
callback instead of getting connected to them by the code that creates
it! I'm not sure that's proper, but if it works... Maybe Andreas
(cc'ed) can advise.
> This is not much use for emulated PHB but it is absolutely required
> for VFIO as we put an IOMMU group onto a separate PHB on SPAPR.
>
> Cc: Markus Armbruster <armbru@redhat.com>
> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
> ---
>
> Are -device and device_add considered synonims? SPAPR PHB can be added
> via the command line just fine but cannot from device_add as
> "Bus 'main-system-bus' does not support hotplugging".
-device is cold plug, device_add is hot plug. device_add could be
improved to do cold plug when used before the machine starts.
next prev parent reply other threads:[~2014-01-20 15:27 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-13 9:29 [Qemu-devel] [PATCH] spapr-pci: enable adding PHB via -device Alexey Kardashevskiy
2014-01-20 14:55 ` Alexander Graf
2014-01-20 15:27 ` Markus Armbruster [this message]
2014-01-21 1:37 ` Alexey Kardashevskiy
2014-01-21 7:56 ` Markus Armbruster
2014-01-21 10:00 ` Alexey Kardashevskiy
2014-01-21 10:19 ` Andreas Färber
2014-01-21 13:00 ` Alexey Kardashevskiy
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=87a9eqbrn0.fsf@blackfin.pond.sub.org \
--to=armbru@redhat.com \
--cc=afaerber@suse.de \
--cc=agraf@suse.de \
--cc=aik@ozlabs.ru \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@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 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.