From: Marcel Apfelbaum <marcel@redhat.com>
To: qemu-devel@nongnu.org
Cc: peter.maydell@linaro.org, mst@redhat.com, lersek@redhat.com,
agraf@suse.de, stefanha@redhat.com, pbonzini@redhat.com,
afaerber@suse.de, rth@twiddle.net
Subject: [Qemu-devel] [PATCH 1/6] hw/ppc: modified the condition for usb controllers to be created for some ppc machines
Date: Tue, 6 Jan 2015 15:29:12 +0200 [thread overview]
Message-ID: <1420550957-22337-2-git-send-email-marcel@redhat.com> (raw)
In-Reply-To: <1420550957-22337-1-git-send-email-marcel@redhat.com>
Some ppc machines create a default usb controller based on a 'machine condition'.
Until now the logic was: create the usb controller if:
- the usb option was supplied in cli and value is true or
- the usb option was absent and both set_defaults and the machine
condition were true.
Modified the logic to:
Create the usb controller if:
- the machine condition is true and defaults are enabled or
- the usb option is supplied and true.
The main for this is to simplify the usb_enabled method.
Signed-off-by: Marcel Apfelbaum <marcel@redhat.com>
---
hw/ppc/mac_newworld.c | 3 ++-
hw/ppc/spapr.c | 2 +-
include/sysemu/sysemu.h | 1 +
vl.c | 7 ++++++-
4 files changed, 10 insertions(+), 3 deletions(-)
diff --git a/hw/ppc/mac_newworld.c b/hw/ppc/mac_newworld.c
index b60a832..8ba9499 100644
--- a/hw/ppc/mac_newworld.c
+++ b/hw/ppc/mac_newworld.c
@@ -417,7 +417,8 @@ static void ppc_core99_init(MachineState *machine)
dev = qdev_create(adb_bus, TYPE_ADB_MOUSE);
qdev_init_nofail(dev);
- if (usb_enabled(machine_arch == ARCH_MAC99_U3)) {
+ if ((machine_arch == ARCH_MAC99_U3 && defaults_enabled()) ||
+ usb_enabled(false)) {
pci_create_simple(pci_bus, -1, "pci-ohci");
/* U3 needs to use USB for input because Linux doesn't support via-cuda
on PPC64 */
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index 08401e0..d5de301 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -1486,7 +1486,7 @@ static void ppc_spapr_init(MachineState *machine)
spapr->has_graphics = true;
}
- if (usb_enabled(spapr->has_graphics)) {
+ if ((spapr->has_graphics && defaults_enabled()) || usb_enabled(false)) {
pci_create_simple(phb->bus, -1, "pci-ohci");
if (spapr->has_graphics) {
usbdevice_create("keyboard");
diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h
index 503e5a4..a31044c 100644
--- a/include/sysemu/sysemu.h
+++ b/include/sysemu/sysemu.h
@@ -227,6 +227,7 @@ void qemu_boot_set(const char *boot_order, Error **errp);
QemuOpts *qemu_get_machine_opts(void);
+bool defaults_enabled(void);
bool usb_enabled(bool default_usb);
extern QemuOptsList qemu_legacy_drive_opts;
diff --git a/vl.c b/vl.c
index bea9656..415535f 100644
--- a/vl.c
+++ b/vl.c
@@ -997,10 +997,15 @@ static int parse_name(QemuOpts *opts, void *opaque)
return 0;
}
+bool defaults_enabled(void)
+{
+ return has_defaults;
+}
+
bool usb_enabled(bool default_usb)
{
return qemu_opt_get_bool(qemu_get_machine_opts(), "usb",
- has_defaults && default_usb);
+ default_usb);
}
#ifndef _WIN32
--
2.1.0
next prev parent reply other threads:[~2015-01-06 13:29 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-06 13:29 [Qemu-devel] [PATCH 0/6] simplify usb enabling logic and fix a Qemu crash Marcel Apfelbaum
2015-01-06 13:29 ` Marcel Apfelbaum [this message]
2015-01-06 21:46 ` [Qemu-devel] [PATCH 1/6] hw/ppc: modified the condition for usb controllers to be created for some ppc machines Alexander Graf
2015-01-06 13:29 ` [Qemu-devel] [PATCH 2/6] hw/machine: added machine_usb wrapper Marcel Apfelbaum
2015-01-06 13:29 ` [Qemu-devel] [PATCH 3/6] hw/usb: simplified usb_enabled Marcel Apfelbaum
2015-01-06 13:29 ` [Qemu-devel] [PATCH 4/6] hw/ppc/mac_newworld: QOMified mac99 machines Marcel Apfelbaum
2015-01-06 13:29 ` [Qemu-devel] [PATCH 5/6] hw/ppc/spapr: simplify usb controller creation logic Marcel Apfelbaum
2015-01-06 20:45 ` Paolo Bonzini
2015-01-07 11:03 ` Marcel Apfelbaum
2015-01-07 11:07 ` Paolo Bonzini
2015-01-07 11:15 ` Alexander Graf
2015-01-07 11:22 ` Paolo Bonzini
2015-01-07 11:27 ` Alexander Graf
2015-01-07 11:32 ` Paolo Bonzini
2015-01-07 11:37 ` Alexander Graf
2015-01-07 14:57 ` Marcel Apfelbaum
2015-01-07 11:50 ` Marcel Apfelbaum
2015-01-06 13:29 ` [Qemu-devel] [PATCH 6/6] hw/ppc/mac_newworld: " Marcel Apfelbaum
2015-01-06 19:48 ` [Qemu-devel] [PATCH 0/6] simplify usb enabling logic and fix a Qemu crash Paolo Bonzini
2015-01-06 20:41 ` Paolo Bonzini
2015-01-06 21:54 ` Alexander Graf
2015-01-07 5:25 ` Paolo Bonzini
2015-01-07 13:15 ` Stefan Hajnoczi
2015-01-08 13:27 ` Peter Maydell
2015-01-08 16:35 ` 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=1420550957-22337-2-git-send-email-marcel@redhat.com \
--to=marcel@redhat.com \
--cc=afaerber@suse.de \
--cc=agraf@suse.de \
--cc=lersek@redhat.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
--cc=stefanha@redhat.com \
/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.