From patchwork Wed Jan 20 21:58:33 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefan Weil X-Patchwork-Id: 43375 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 713E4B7D5D for ; Thu, 21 Jan 2010 09:15:02 +1100 (EST) Received: from localhost ([127.0.0.1]:55736 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NXio3-0007EK-2b for incoming@patchwork.ozlabs.org; Wed, 20 Jan 2010 17:13:43 -0500 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NXiZm-0002Dk-GR for qemu-devel@nongnu.org; Wed, 20 Jan 2010 16:58:58 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NXiZf-00025b-MR for qemu-devel@nongnu.org; Wed, 20 Jan 2010 16:58:56 -0500 Received: from [199.232.76.173] (port=40514 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NXiZf-000257-8a for qemu-devel@nongnu.org; Wed, 20 Jan 2010 16:58:51 -0500 Received: from moutng.kundenserver.de ([212.227.17.9]:63019) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NXiZe-0002xH-FX for qemu-devel@nongnu.org; Wed, 20 Jan 2010 16:58:50 -0500 Received: from flocke.weilnetz.de (p54ADF4FC.dip.t-dialin.net [84.173.244.252]) by mrelayeu.kundenserver.de (node=mrbap0) with ESMTP (Nemesis) id 0LbPxa-1OHSex1YsM-00kSkC; Wed, 20 Jan 2010 22:58:49 +0100 Received: from stefan by flocke.weilnetz.de with local (Exim 4.71) (envelope-from ) id 1NXiZc-00066J-Ju; Wed, 20 Jan 2010 22:58:48 +0100 From: Stefan Weil To: QEMU Developers Date: Wed, 20 Jan 2010 22:58:33 +0100 Message-Id: <1264024715-23417-1-git-send-email-weil@mail.berlios.de> X-Mailer: git-send-email 1.6.5 In-Reply-To: <4B54B749.5080304@mail.berlios.de> References: <4B54B749.5080304@mail.berlios.de> X-Provags-ID: V01U2FsdGVkX1/DppNctTqSoqE6zDtuY/8BvKZ7Dr04IhCazuA E5t5Plnda/U+W3vD9YZqcPPALYlT3v4hZUfClU1ca8W/5Flm1z UWQUqGwNiPHkWmRSjSk9+qnNHSwRjj+KbDw9CcIAu1/CfShoSw IIQ== X-detected-operating-system: by monty-python.gnu.org: Genre and OS details not recognized. Cc: Subject: [Qemu-devel] [PATCH 1/3] qdev: Add help for device properties X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org When called with property "?", a list of supported properties will be printed (instead of an error message). This is useful for command lines like qemu -device e1000,? and was already standard for other options like model=? Signed-off-by: Stefan Weil --- hw/qdev-properties.c | 15 +++++++++++++-- 1 files changed, 13 insertions(+), 2 deletions(-) diff --git a/hw/qdev-properties.c b/hw/qdev-properties.c index 277ff9e..8547ad2 100644 --- a/hw/qdev-properties.c +++ b/hw/qdev-properties.c @@ -544,8 +544,19 @@ int qdev_prop_parse(DeviceState *dev, const char *name, const char *value) prop = qdev_prop_find(dev, name); if (!prop) { - fprintf(stderr, "property \"%s.%s\" not found\n", - dev->info->name, name); + if (strcmp(name, "?") != 0) { + fprintf(stderr, "property \"%s.%s\" not found\n", + dev->info->name, name); + } else { + fprintf(stderr, "supported properties:\n"); + if (dev->info->props != NULL) { + Property *props = dev->info->props; + while (props->name) { + fprintf(stderr, "%s.%s\n", dev->info->name, props->name); + props++; + } + } + } return -1; } if (!prop->info->parse) {