From: "Andreas Färber" <afaerber@suse.de>
To: Alexander Graf <agraf@suse.de>
Cc: benh@au1.ibm.com, shangw@linux.vnet.ibm.com,
qemu-devel@nongnu.org, Li Zhang <zhlcindy@linux.vnet.ibm.com>,
qemu-ppc@nongnu.org, zhlcindy@gmail.com
Subject: Re: [Qemu-devel] [Qemu-ppc][PATCH v5 1/4] Add usb option in machine options
Date: Fri, 06 Jul 2012 18:08:21 +0200 [thread overview]
Message-ID: <4FF70D75.7050104@suse.de> (raw)
In-Reply-To: <E809D7E4-7FA2-4825-BB08-92914D437493@suse.de>
Am 06.07.2012 18:03, schrieb Alexander Graf:
>
> On 06.07.2012, at 17:58, Andreas Färber wrote:
>
>> Am 06.07.2012 15:43, schrieb Alexander Graf:
>>>
>>> On 02.07.2012, at 07:25, zhlcindy@gmail.com wrote:
>>>
>>>> From: Li Zhang <zhlcindy@linux.vnet.ibm.com>
>>>>
>>>> pSeries machine needs to enable USB to add a USB
>>>> keyboard or USB mouse. -usb option won't be used in
>>>> the future, and machine options are a better way to
>>>> enable USB.
>>>>
>>>> So this patch is to add USB option to machine options
>>>> (-machine type=pseries,usb=on/off) to enable/disable
>>>> USB controller. And machines will get the machine option
>>>> and create a USB controller if USB is on.
>>>>
>>>> By the way, USB is on by default on pSeries machine.
>>>> So USB controller should be turned off explicitly through
>>>> the command line for "-nodefault" case as the following:
>>>> -machine type=pseries,usb=off.
>>>>
>>>> Signed-off-by: Li Zhang <zhlcindy@linux.vnet.ibm.com>
>>>> Reviewed-by: Andreas Färber <afaerber@suse.de>
>>>> ---
>>>> hw/spapr.c | 11 +++++++++++
>>>> qemu-config.c | 4 ++++
>>>> 2 files changed, 15 insertions(+)
>>>>
>>>> diff --git a/hw/spapr.c b/hw/spapr.c
>>>> index 81c9343..973de1b 100644
>>>> --- a/hw/spapr.c
>>>> +++ b/hw/spapr.c
>> [...]
>>>> @@ -710,6 +712,15 @@ static void ppc_spapr_init(ram_addr_t ram_size,
>>>> spapr_vscsi_create(spapr->vio_bus);
>>>> }
>>>>
>>>> + machine_opts = qemu_opts_find(qemu_find_opts("machine"), 0);
>>>> + if (machine_opts) {
>>>> + add_usb = qemu_opt_get_bool(machine_opts, "usb", true);
>>>> + }
>>>> +
>>>> + if (add_usb) {
>>>> + pci_create_simple(QLIST_FIRST(&spapr->phbs)->host_state.bus,
>>>> + -1, "pci-ohci");
>>>> + }
>>>
>>> Didn't I ask you to extract this out to generic code? I don't want to have a "usb" machine opt that is only available for -M pseries.
>>
>> Isn't the mapping from "usb=on" to device-level actions
>> machine-specific? We have ohci, uhci, ehci, xhci to choose from. And the
>> bus to place it on is machine-specific, too.
>>
>> So did you rather mean adding usb= awareness to more machines? If we
>> generalize usb=on to usb=none/ohci/... plus some usbbus= we get -device.
>
> I was thinking of replacing usb_enabled with
>
> static inline int usb_enabled(bool default) {
> machine_opts = qemu_opts_find(qemu_find_opts("machine"), 0);
> if (machine_opts) {
> return qemu_opt_get_bool(machine_opts, "usb", default);
> }
> return default;
> }
>
> Whereas -usb in vl.c would set machine.usb = on. Then all users of usb_enabled would automatically be converted to the new syntax and we could even use the same logic in spapr.c.
Oh sure, if we return bool and keep QemuOpts* locally it's perfect. :)
I understood you wanted to generalize the if (add_usb) {} that you
replied under. ;)
Andreas
--
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg
next prev parent reply other threads:[~2012-07-06 16:08 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-02 5:25 [Qemu-devel] [Qemu-ppc][PATCH v5 0/4] Add USB option and enable vga on spapr zhlcindy
2012-07-02 5:25 ` [Qemu-devel] [Qemu-ppc][PATCH v5 1/4] Add usb option in machine options zhlcindy
2012-07-06 13:43 ` Alexander Graf
2012-07-06 15:58 ` Andreas Färber
2012-07-06 16:03 ` Alexander Graf
2012-07-06 16:08 ` Andreas Färber [this message]
2012-07-08 14:46 ` Li Zhang
2012-07-08 15:02 ` Alexander Graf
2012-07-08 15:15 ` Li Zhang
2012-07-08 14:21 ` Li Zhang
2012-07-08 14:45 ` Alexander Graf
2012-07-08 14:52 ` Li Zhang
2012-07-02 5:25 ` [Qemu-devel] [Qemu-ppc][PATCH v5 2/4] Add one new file vga-pci.h zhlcindy
2012-07-03 7:17 ` [Qemu-devel] [Qemu-ppc] [PATCH " Li Zhang
2012-07-02 5:25 ` [Qemu-devel] [Qemu-ppc][PATCH v5 3/4] Cleanup pc.h on other platforms zhlcindy
2012-07-02 5:25 ` [Qemu-devel] [Qemu-ppc][PATCH v5 4/4] spapr: Add support for -vga option zhlcindy
2012-07-06 13:50 ` Alexander Graf
2012-07-06 13:58 ` Andreas Färber
2012-07-08 15:08 ` Li Zhang
2012-07-08 21:54 ` Benjamin Herrenschmidt
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=4FF70D75.7050104@suse.de \
--to=afaerber@suse.de \
--cc=agraf@suse.de \
--cc=benh@au1.ibm.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=shangw@linux.vnet.ibm.com \
--cc=zhlcindy@gmail.com \
--cc=zhlcindy@linux.vnet.ibm.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.