From patchwork Fri May 28 09:57:55 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Amit Shah X-Patchwork-Id: 53877 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 E58C0B7D27 for ; Fri, 28 May 2010 20:00:34 +1000 (EST) Received: from localhost ([127.0.0.1]:44844 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OHwMX-0003GX-9f for incoming@patchwork.ozlabs.org; Fri, 28 May 2010 06:00:21 -0400 Received: from [140.186.70.92] (port=49149 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OHwIm-0001MB-FR for qemu-devel@nongnu.org; Fri, 28 May 2010 05:56:31 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OHwIi-0005Qk-Id for qemu-devel@nongnu.org; Fri, 28 May 2010 05:56:28 -0400 Received: from mx1.redhat.com ([209.132.183.28]:38455) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OHwIh-0005Qc-VX for qemu-devel@nongnu.org; Fri, 28 May 2010 05:56:24 -0400 Received: from int-mx08.intmail.prod.int.phx2.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id o4S9uMX7014141 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Fri, 28 May 2010 05:56:22 -0400 Received: from localhost (vpn-226-207.phx2.redhat.com [10.3.226.207]) by int-mx08.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id o4S9uE20009381; Fri, 28 May 2010 05:56:15 -0400 From: Amit Shah To: qemu list Date: Fri, 28 May 2010 15:27:55 +0530 Message-Id: <24764499566cd2edeb02b44be2d53150e076d5b5.1275040675.git.amit.shah@redhat.com> X-Scanned-By: MIMEDefang 2.67 on 10.5.11.21 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. Cc: Amit Shah , Juan Quintela , Gerd Hoffmann , Markus Armbruster Subject: [Qemu-devel] [RFC PATCH 1/3] qdev: Add a description field for qdev properties for documentation 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 Add a 'description' along with each qdev property to document the input each qdev property takes. Signed-off-by: Amit Shah --- block_int.h | 10 +++--- hw/a9mpcore.c | 2 +- hw/acpi_piix4.c | 2 +- hw/arm11mpcore.c | 4 +- hw/arm_sysctl.c | 4 +- hw/armv7m.c | 2 +- hw/cs4231a.c | 6 ++-- hw/debugcon.c | 6 ++-- hw/eccmemctl.c | 2 +- hw/escc.c | 16 +++++----- hw/etraxfs_pic.c | 3 +- hw/fdc.c | 10 +++--- hw/gus.c | 8 ++-- hw/i2c.c | 2 +- hw/ide/cmd646.c | 2 +- hw/ide/isa.c | 6 ++-- hw/ide/qdev.c | 4 +- hw/integratorcp.c | 2 +- hw/lance.c | 2 +- hw/m48t59.c | 12 ++++---- hw/mc146818rtc.c | 2 +- hw/ne2000-isa.c | 4 +- hw/parallel.c | 8 ++-- hw/pci.c | 10 +++--- hw/qdev-addr.h | 4 +- hw/qdev.c | 3 +- hw/qdev.h | 75 ++++++++++++++++++++++++++----------------------- hw/s390-virtio-bus.c | 2 +- hw/sb16.c | 10 +++--- hw/scsi-bus.c | 2 +- hw/scsi-disk.c | 2 +- hw/serial.c | 8 ++-- hw/slavio_timer.c | 2 +- hw/smbus_eeprom.c | 2 +- hw/sparc32_dma.c | 2 +- hw/sun4m.c | 2 +- hw/sun4m_iommu.c | 2 +- hw/sun4u.c | 2 +- hw/syborg_fb.c | 4 +- hw/syborg_interrupt.c | 2 +- hw/syborg_keyboard.c | 2 +- hw/syborg_pointer.c | 4 +- hw/syborg_serial.c | 2 +- hw/syborg_timer.c | 2 +- hw/tcx.c | 10 +++--- hw/usb-ohci.c | 4 +- hw/usb-serial.c | 12 ++++---- hw/vga-pci.c | 4 +- hw/virtio-blk.h | 4 +- hw/virtio-console.c | 16 ++++++---- hw/virtio-net.h | 51 +++++++++++++++++++++------------ hw/virtio-pci.c | 16 +++++----- hw/virtio.h | 2 +- hw/xilinx_ethlite.c | 6 ++- hw/xilinx_intc.c | 3 +- hw/xilinx_timer.c | 4 +- net.h | 6 ++-- usb-linux.c | 8 ++-- 58 files changed, 218 insertions(+), 191 deletions(-) diff --git a/block_int.h b/block_int.h index 1a7240c..767cd29 100644 --- a/block_int.h +++ b/block_int.h @@ -231,12 +231,12 @@ static inline unsigned int get_physical_block_exp(BlockConf *conf) } #define DEFINE_BLOCK_PROPERTIES(_state, _conf) \ - DEFINE_PROP_DRIVE("drive", _state, _conf.dinfo), \ + DEFINE_PROP_DRIVE("drive", _state, _conf.dinfo, ""), \ DEFINE_PROP_UINT16("logical_block_size", _state, \ - _conf.logical_block_size, 512), \ + _conf.logical_block_size, 512, ""), \ DEFINE_PROP_UINT16("physical_block_size", _state, \ - _conf.physical_block_size, 512), \ - DEFINE_PROP_UINT16("min_io_size", _state, _conf.min_io_size, 512), \ - DEFINE_PROP_UINT32("opt_io_size", _state, _conf.opt_io_size, 512) + _conf.physical_block_size, 512, ""), \ + DEFINE_PROP_UINT16("min_io_size", _state, _conf.min_io_size, 512, ""), \ + DEFINE_PROP_UINT32("opt_io_size", _state, _conf.opt_io_size, 512, "") #endif /* BLOCK_INT_H */ diff --git a/hw/a9mpcore.c b/hw/a9mpcore.c index b5e5328..174f5d5 100644 --- a/hw/a9mpcore.c +++ b/hw/a9mpcore.c @@ -16,7 +16,7 @@ static SysBusDeviceInfo mpcore_priv_info = { .qdev.name = "a9mpcore_priv", .qdev.size = sizeof(mpcore_priv_state), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("num-cpu", mpcore_priv_state, num_cpu, 1), + DEFINE_PROP_UINT32("num-cpu", mpcore_priv_state, num_cpu, 1, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/acpi_piix4.c b/hw/acpi_piix4.c index 0fce958..fa65cc2 100644 --- a/hw/acpi_piix4.c +++ b/hw/acpi_piix4.c @@ -410,7 +410,7 @@ static PCIDeviceInfo piix4_pm_info = { .init = piix4_pm_initfn, .config_write = pm_write_config, .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("smb_io_base", PIIX4PMState, smb_io_base, 0), + DEFINE_PROP_UINT32("smb_io_base", PIIX4PMState, smb_io_base, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/arm11mpcore.c b/hw/arm11mpcore.c index 3bbd885..a3a7a9d 100644 --- a/hw/arm11mpcore.c +++ b/hw/arm11mpcore.c @@ -88,7 +88,7 @@ static SysBusDeviceInfo mpcore_rirq_info = { .qdev.name = "realview_mpcore", .qdev.size = sizeof(mpcore_rirq_state), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("num-cpu", mpcore_rirq_state, num_cpu, 1), + DEFINE_PROP_UINT32("num-cpu", mpcore_rirq_state, num_cpu, 1, ""), DEFINE_PROP_END_OF_LIST(), } }; @@ -98,7 +98,7 @@ static SysBusDeviceInfo mpcore_priv_info = { .qdev.name = "arm11mpcore_priv", .qdev.size = sizeof(mpcore_priv_state), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("num-cpu", mpcore_priv_state, num_cpu, 1), + DEFINE_PROP_UINT32("num-cpu", mpcore_priv_state, num_cpu, 1, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/arm_sysctl.c b/hw/arm_sysctl.c index 0cb2ffc..b35d269 100644 --- a/hw/arm_sysctl.c +++ b/hw/arm_sysctl.c @@ -232,8 +232,8 @@ static SysBusDeviceInfo arm_sysctl_info = { .qdev.size = sizeof(arm_sysctl_state), .qdev.reset = arm_sysctl_reset, .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("sys_id", arm_sysctl_state, sys_id, 0), - DEFINE_PROP_UINT32("proc_id", arm_sysctl_state, proc_id, 0), + DEFINE_PROP_UINT32("sys_id", arm_sysctl_state, sys_id, 0, ""), + DEFINE_PROP_UINT32("proc_id", arm_sysctl_state, proc_id, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/armv7m.c b/hw/armv7m.c index 854261d..9f8f2a0 100644 --- a/hw/armv7m.c +++ b/hw/armv7m.c @@ -247,7 +247,7 @@ static SysBusDeviceInfo bitband_info = { .qdev.name = "ARM,bitband-memory", .qdev.size = sizeof(BitBandState), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("base", BitBandState, base, 0), + DEFINE_PROP_UINT32("base", BitBandState, base, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/cs4231a.c b/hw/cs4231a.c index 4d5ce5c..330dd4a 100644 --- a/hw/cs4231a.c +++ b/hw/cs4231a.c @@ -671,9 +671,9 @@ static ISADeviceInfo cs4231a_info = { .qdev.vmsd = &vmstate_cs4231a, .init = cs4231a_initfn, .qdev.props = (Property[]) { - DEFINE_PROP_HEX32 ("iobase", CSState, port, 0x534), - DEFINE_PROP_UINT32 ("irq", CSState, irq, 9), - DEFINE_PROP_UINT32 ("dma", CSState, dma, 3), + DEFINE_PROP_HEX32 ("iobase", CSState, port, 0x534, ""), + DEFINE_PROP_UINT32 ("irq", CSState, irq, 9, ""), + DEFINE_PROP_UINT32 ("dma", CSState, dma, 3, ""), DEFINE_PROP_END_OF_LIST (), }, }; diff --git a/hw/debugcon.c b/hw/debugcon.c index 5ee6821..a1e06ee 100644 --- a/hw/debugcon.c +++ b/hw/debugcon.c @@ -92,9 +92,9 @@ static ISADeviceInfo debugcon_isa_info = { .qdev.size = sizeof(ISADebugconState), .init = debugcon_isa_initfn, .qdev.props = (Property[]) { - DEFINE_PROP_HEX32("iobase", ISADebugconState, iobase, 0xe9), - DEFINE_PROP_CHR("chardev", ISADebugconState, state.chr), - DEFINE_PROP_HEX32("readback", ISADebugconState, state.readback, 0xe9), + DEFINE_PROP_HEX32("iobase", ISADebugconState, iobase, 0xe9, ""), + DEFINE_PROP_CHR("chardev", ISADebugconState, state.chr, ""), + DEFINE_PROP_HEX32("readback", ISADebugconState, state.readback, 0xe9, ""), DEFINE_PROP_END_OF_LIST(), }, }; diff --git a/hw/eccmemctl.c b/hw/eccmemctl.c index 498c61a..442a695 100644 --- a/hw/eccmemctl.c +++ b/hw/eccmemctl.c @@ -324,7 +324,7 @@ static SysBusDeviceInfo ecc_info = { .qdev.vmsd = &vmstate_ecc, .qdev.reset = ecc_reset, .qdev.props = (Property[]) { - DEFINE_PROP_HEX32("version", ECCState, version, -1), + DEFINE_PROP_HEX32("version", ECCState, version, -1, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/escc.c b/hw/escc.c index 6d2fd36..adda135 100644 --- a/hw/escc.c +++ b/hw/escc.c @@ -932,14 +932,14 @@ static SysBusDeviceInfo escc_info = { .qdev.vmsd = &vmstate_escc, .qdev.reset = escc_reset, .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("frequency", SerialState, frequency, 0), - DEFINE_PROP_UINT32("it_shift", SerialState, it_shift, 0), - DEFINE_PROP_UINT32("disabled", SerialState, disabled, 0), - DEFINE_PROP_UINT32("disabled", SerialState, disabled, 0), - DEFINE_PROP_UINT32("chnBtype", SerialState, chn[0].type, 0), - DEFINE_PROP_UINT32("chnAtype", SerialState, chn[1].type, 0), - DEFINE_PROP_CHR("chrB", SerialState, chn[0].chr), - DEFINE_PROP_CHR("chrA", SerialState, chn[1].chr), + DEFINE_PROP_UINT32("frequency", SerialState, frequency, 0, ""), + DEFINE_PROP_UINT32("it_shift", SerialState, it_shift, 0, ""), + DEFINE_PROP_UINT32("disabled", SerialState, disabled, 0, ""), + DEFINE_PROP_UINT32("disabled", SerialState, disabled, 0, ""), + DEFINE_PROP_UINT32("chnBtype", SerialState, chn[0].type, 0, ""), + DEFINE_PROP_UINT32("chnAtype", SerialState, chn[1].type, 0, ""), + DEFINE_PROP_CHR("chrB", SerialState, chn[0].chr, ""), + DEFINE_PROP_CHR("chrA", SerialState, chn[1].chr, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/etraxfs_pic.c b/hw/etraxfs_pic.c index b2c4859..3cb6638 100644 --- a/hw/etraxfs_pic.c +++ b/hw/etraxfs_pic.c @@ -155,7 +155,8 @@ static SysBusDeviceInfo etraxfs_pic_info = { .qdev.name = "etraxfs,pic", .qdev.size = sizeof(struct etrax_pic), .qdev.props = (Property[]) { - DEFINE_PROP_PTR("interrupt_vector", struct etrax_pic, interrupt_vector), + DEFINE_PROP_PTR("interrupt_vector", struct etrax_pic, interrupt_vector, + ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/fdc.c b/hw/fdc.c index 6306496..2ecfc47 100644 --- a/hw/fdc.c +++ b/hw/fdc.c @@ -2031,8 +2031,8 @@ static ISADeviceInfo isa_fdc_info = { .qdev.vmsd = &vmstate_isa_fdc, .qdev.reset = fdctrl_external_reset_isa, .qdev.props = (Property[]) { - DEFINE_PROP_DRIVE("driveA", FDCtrlISABus, state.drives[0].dinfo), - DEFINE_PROP_DRIVE("driveB", FDCtrlISABus, state.drives[1].dinfo), + DEFINE_PROP_DRIVE("driveA", FDCtrlISABus, state.drives[0].dinfo, ""), + DEFINE_PROP_DRIVE("driveB", FDCtrlISABus, state.drives[1].dinfo, ""), DEFINE_PROP_END_OF_LIST(), }, }; @@ -2054,8 +2054,8 @@ static SysBusDeviceInfo sysbus_fdc_info = { .qdev.vmsd = &vmstate_sysbus_fdc, .qdev.reset = fdctrl_external_reset_sysbus, .qdev.props = (Property[]) { - DEFINE_PROP_DRIVE("driveA", FDCtrlSysBus, state.drives[0].dinfo), - DEFINE_PROP_DRIVE("driveB", FDCtrlSysBus, state.drives[1].dinfo), + DEFINE_PROP_DRIVE("driveA", FDCtrlSysBus, state.drives[0].dinfo, ""), + DEFINE_PROP_DRIVE("driveB", FDCtrlSysBus, state.drives[1].dinfo, ""), DEFINE_PROP_END_OF_LIST(), }, }; @@ -2067,7 +2067,7 @@ static SysBusDeviceInfo sun4m_fdc_info = { .qdev.vmsd = &vmstate_sysbus_fdc, .qdev.reset = fdctrl_external_reset_sysbus, .qdev.props = (Property[]) { - DEFINE_PROP_DRIVE("drive", FDCtrlSysBus, state.drives[0].dinfo), + DEFINE_PROP_DRIVE("drive", FDCtrlSysBus, state.drives[0].dinfo, ""), DEFINE_PROP_END_OF_LIST(), }, }; diff --git a/hw/gus.c b/hw/gus.c index e9016d8..2c37ff9 100644 --- a/hw/gus.c +++ b/hw/gus.c @@ -303,10 +303,10 @@ static ISADeviceInfo gus_info = { .qdev.vmsd = &vmstate_gus, .init = gus_initfn, .qdev.props = (Property[]) { - DEFINE_PROP_UINT32 ("freq", GUSState, freq, 44100), - DEFINE_PROP_HEX32 ("iobase", GUSState, port, 0x240), - DEFINE_PROP_UINT32 ("irq", GUSState, emu.gusirq, 7), - DEFINE_PROP_UINT32 ("dma", GUSState, emu.gusdma, 3), + DEFINE_PROP_UINT32 ("freq", GUSState, freq, 44100, ""), + DEFINE_PROP_HEX32 ("iobase", GUSState, port, 0x240, ""), + DEFINE_PROP_UINT32 ("irq", GUSState, emu.gusirq, 7, ""), + DEFINE_PROP_UINT32 ("dma", GUSState, emu.gusdma, 3, ""), DEFINE_PROP_END_OF_LIST (), }, }; diff --git a/hw/i2c.c b/hw/i2c.c index bee8e88..8e54c25 100644 --- a/hw/i2c.c +++ b/hw/i2c.c @@ -21,7 +21,7 @@ static struct BusInfo i2c_bus_info = { .name = "I2C", .size = sizeof(i2c_bus), .props = (Property[]) { - DEFINE_PROP_UINT8("address", struct i2c_slave, address, 0), + DEFINE_PROP_UINT8("address", struct i2c_slave, address, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/ide/cmd646.c b/hw/ide/cmd646.c index cdcc9bf..885a460 100644 --- a/hw/ide/cmd646.c +++ b/hw/ide/cmd646.c @@ -286,7 +286,7 @@ static PCIDeviceInfo cmd646_ide_info[] = { .qdev.size = sizeof(PCIIDEState), .init = pci_cmd646_ide_initfn, .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("secondary", PCIIDEState, secondary, 0), + DEFINE_PROP_UINT32("secondary", PCIIDEState, secondary, 0, ""), DEFINE_PROP_END_OF_LIST(), }, },{ diff --git a/hw/ide/isa.c b/hw/ide/isa.c index dff7c79..b2de3db 100644 --- a/hw/ide/isa.c +++ b/hw/ide/isa.c @@ -102,9 +102,9 @@ static ISADeviceInfo isa_ide_info = { .init = isa_ide_initfn, .qdev.reset = isa_ide_reset, .qdev.props = (Property[]) { - DEFINE_PROP_HEX32("iobase", ISAIDEState, iobase, 0x1f0), - DEFINE_PROP_HEX32("iobase2", ISAIDEState, iobase2, 0x3f6), - DEFINE_PROP_UINT32("irq", ISAIDEState, isairq, 14), + DEFINE_PROP_HEX32("iobase", ISAIDEState, iobase, 0x1f0, ""), + DEFINE_PROP_HEX32("iobase2", ISAIDEState, iobase2, 0x3f6, ""), + DEFINE_PROP_UINT32("irq", ISAIDEState, isairq, 14, ""), DEFINE_PROP_END_OF_LIST(), }, }; diff --git a/hw/ide/qdev.c b/hw/ide/qdev.c index b18693d..d71c2a1 100644 --- a/hw/ide/qdev.c +++ b/hw/ide/qdev.c @@ -109,9 +109,9 @@ static IDEDeviceInfo ide_drive_info = { .qdev.size = sizeof(IDEDrive), .init = ide_drive_initfn, .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("unit", IDEDrive, dev.unit, -1), + DEFINE_PROP_UINT32("unit", IDEDrive, dev.unit, -1, ""), DEFINE_BLOCK_PROPERTIES(IDEDrive, dev.conf), - DEFINE_PROP_STRING("ver", IDEDrive, dev.version), + DEFINE_PROP_STRING("ver", IDEDrive, dev.version, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/integratorcp.c b/hw/integratorcp.c index bee8298..3492f03 100644 --- a/hw/integratorcp.c +++ b/hw/integratorcp.c @@ -528,7 +528,7 @@ static SysBusDeviceInfo core_info = { .qdev.name = "integrator_core", .qdev.size = sizeof(integratorcm_state), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("memsz", integratorcm_state, memsz, 0), + DEFINE_PROP_UINT32("memsz", integratorcm_state, memsz, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/lance.c b/hw/lance.c index b6b04dd..c64bf36 100644 --- a/hw/lance.c +++ b/hw/lance.c @@ -151,7 +151,7 @@ static SysBusDeviceInfo lance_info = { .qdev.reset = lance_reset, .qdev.vmsd = &vmstate_lance, .qdev.props = (Property[]) { - DEFINE_PROP_PTR("dma", SysBusPCNetState, state.dma_opaque), + DEFINE_PROP_PTR("dma", SysBusPCNetState, state.dma_opaque, ""), DEFINE_NIC_PROPERTIES(SysBusPCNetState, state.conf), DEFINE_PROP_END_OF_LIST(), } diff --git a/hw/m48t59.c b/hw/m48t59.c index c3d7b3a..5402932 100644 --- a/hw/m48t59.c +++ b/hw/m48t59.c @@ -730,9 +730,9 @@ static ISADeviceInfo m48t59_isa_info = { .qdev.reset = m48t59_reset_isa, .qdev.no_user = 1, .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("size", M48t59ISAState, state.size, -1), - DEFINE_PROP_UINT32("type", M48t59ISAState, state.type, -1), - DEFINE_PROP_HEX32( "io_base", M48t59ISAState, state.io_base, 0), + DEFINE_PROP_UINT32("size", M48t59ISAState, state.size, -1, ""), + DEFINE_PROP_UINT32("type", M48t59ISAState, state.type, -1, ""), + DEFINE_PROP_HEX32( "io_base", M48t59ISAState, state.io_base, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; @@ -743,9 +743,9 @@ static SysBusDeviceInfo m48t59_info = { .qdev.size = sizeof(M48t59SysBusState), .qdev.reset = m48t59_reset_sysbus, .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("size", M48t59SysBusState, state.size, -1), - DEFINE_PROP_UINT32("type", M48t59SysBusState, state.type, -1), - DEFINE_PROP_HEX32( "io_base", M48t59SysBusState, state.io_base, 0), + DEFINE_PROP_UINT32("size", M48t59SysBusState, state.size, -1, ""), + DEFINE_PROP_UINT32("type", M48t59SysBusState, state.type, -1, ""), + DEFINE_PROP_HEX32( "io_base", M48t59SysBusState, state.io_base, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/mc146818rtc.c b/hw/mc146818rtc.c index 571c593..a2691f4 100644 --- a/hw/mc146818rtc.c +++ b/hw/mc146818rtc.c @@ -637,7 +637,7 @@ static ISADeviceInfo mc146818rtc_info = { .qdev.vmsd = &vmstate_rtc, .init = rtc_initfn, .qdev.props = (Property[]) { - DEFINE_PROP_INT32("base_year", RTCState, base_year, 1980), + DEFINE_PROP_INT32("base_year", RTCState, base_year, 1980, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/ne2000-isa.c b/hw/ne2000-isa.c index 03a5a1f..ec7daa3 100644 --- a/hw/ne2000-isa.c +++ b/hw/ne2000-isa.c @@ -107,8 +107,8 @@ static ISADeviceInfo ne2000_isa_info = { .qdev.size = sizeof(ISANE2000State), .init = isa_ne2000_initfn, .qdev.props = (Property[]) { - DEFINE_PROP_HEX32("iobase", ISANE2000State, iobase, 0x300), - DEFINE_PROP_UINT32("irq", ISANE2000State, isairq, 9), + DEFINE_PROP_HEX32("iobase", ISANE2000State, iobase, 0x300, ""), + DEFINE_PROP_UINT32("irq", ISANE2000State, isairq, 9, ""), DEFINE_NIC_PROPERTIES(ISANE2000State, ne2000.c), DEFINE_PROP_END_OF_LIST(), }, diff --git a/hw/parallel.c b/hw/parallel.c index be8e2d5..9298d26 100644 --- a/hw/parallel.c +++ b/hw/parallel.c @@ -586,10 +586,10 @@ static ISADeviceInfo parallel_isa_info = { .qdev.size = sizeof(ISAParallelState), .init = parallel_isa_initfn, .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("index", ISAParallelState, index, -1), - DEFINE_PROP_HEX32("iobase", ISAParallelState, iobase, -1), - DEFINE_PROP_UINT32("irq", ISAParallelState, isairq, 7), - DEFINE_PROP_CHR("chardev", ISAParallelState, state.chr), + DEFINE_PROP_UINT32("index", ISAParallelState, index, -1, ""), + DEFINE_PROP_HEX32("iobase", ISAParallelState, iobase, -1, ""), + DEFINE_PROP_UINT32("irq", ISAParallelState, isairq, 7, ""), + DEFINE_PROP_CHR("chardev", ISAParallelState, state.chr, ""), DEFINE_PROP_END_OF_LIST(), }, }; diff --git a/hw/pci.c b/hw/pci.c index 8d84651..a3c6c9f 100644 --- a/hw/pci.c +++ b/hw/pci.c @@ -64,9 +64,9 @@ static struct BusInfo pci_bus_info = { .size = sizeof(PCIBus), .print_dev = pcibus_dev_print, .props = (Property[]) { - DEFINE_PROP_PCI_DEVFN("addr", PCIDevice, devfn, -1), - DEFINE_PROP_STRING("romfile", PCIDevice, romfile), - DEFINE_PROP_UINT32("rombar", PCIDevice, rom_bar, 1), + DEFINE_PROP_PCI_DEVFN("addr", PCIDevice, devfn, -1, ""), + DEFINE_PROP_STRING("romfile", PCIDevice, romfile, ""), + DEFINE_PROP_UINT32("rombar", PCIDevice, rom_bar, 1, ""), DEFINE_PROP_END_OF_LIST() } }; @@ -1906,8 +1906,8 @@ static PCIDeviceInfo bridge_info = { .config_write = pci_bridge_write_config, .header_type = PCI_HEADER_TYPE_BRIDGE, .qdev.props = (Property[]) { - DEFINE_PROP_HEX32("vendorid", PCIBridge, vid, 0), - DEFINE_PROP_HEX32("deviceid", PCIBridge, did, 0), + DEFINE_PROP_HEX32("vendorid", PCIBridge, vid, 0, ""), + DEFINE_PROP_HEX32("deviceid", PCIBridge, did, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/qdev-addr.h b/hw/qdev-addr.h index a0ddf38..515a887 100644 --- a/hw/qdev-addr.h +++ b/hw/qdev-addr.h @@ -1,5 +1,5 @@ -#define DEFINE_PROP_TADDR(_n, _s, _f, _d) \ - DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_taddr, target_phys_addr_t) +#define DEFINE_PROP_TADDR(_n, _s, _f, _d, _c) \ + DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_taddr, target_phys_addr_t, _c) extern PropertyInfo qdev_prop_taddr; void qdev_prop_set_taddr(DeviceState *dev, const char *name, target_phys_addr_t value); diff --git a/hw/qdev.c b/hw/qdev.c index af17486..2cd205b 100644 --- a/hw/qdev.c +++ b/hw/qdev.c @@ -187,7 +187,8 @@ int qdev_device_help(QemuOpts *opts) if (!prop->info->parse) { continue; /* no way to set it, don't show */ } - error_printf("%s.%s=%s\n", info->name, prop->name, prop->info->name); + error_printf("%s.%s=%s, %s\n", info->name, prop->name, + prop->info->name, prop->desc ?: ""); } return 1; } diff --git a/hw/qdev.h b/hw/qdev.h index a44060e..012e303 100644 --- a/hw/qdev.h +++ b/hw/qdev.h @@ -69,6 +69,7 @@ struct BusState { struct Property { const char *name; PropertyInfo *info; + const char *desc; int offset; int bitnr; void *defval; @@ -201,59 +202,63 @@ extern PropertyInfo qdev_prop_netdev; extern PropertyInfo qdev_prop_vlan; extern PropertyInfo qdev_prop_pci_devfn; -#define DEFINE_PROP(_name, _state, _field, _prop, _type) { \ +#define DEFINE_PROP(_name, _state, _field, _prop, _type, _desc) { \ .name = (_name), \ .info = &(_prop), \ + .desc = (_desc), \ .offset = offsetof(_state, _field) \ + type_check(_type,typeof_field(_state, _field)), \ } -#define DEFINE_PROP_DEFAULT(_name, _state, _field, _defval, _prop, _type) { \ +#define DEFINE_PROP_DEFAULT(_name, _state, _field, _defval, _prop, _type, \ + _desc) { \ .name = (_name), \ .info = &(_prop), \ + .desc = (_desc), \ .offset = offsetof(_state, _field) \ + type_check(_type,typeof_field(_state, _field)), \ .defval = (_type[]) { _defval }, \ } -#define DEFINE_PROP_BIT(_name, _state, _field, _bit, _defval) { \ +#define DEFINE_PROP_BIT(_name, _state, _field, _bit, _defval, _desc) { \ .name = (_name), \ .info = &(qdev_prop_bit), \ - .bitnr = (_bit), \ + .desc = (_desc), \ + .bitnr = (_bit), \ .offset = offsetof(_state, _field) \ + type_check(uint32_t,typeof_field(_state, _field)), \ .defval = (bool[]) { (_defval) }, \ } -#define DEFINE_PROP_UINT8(_n, _s, _f, _d) \ - DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_uint8, uint8_t) -#define DEFINE_PROP_UINT16(_n, _s, _f, _d) \ - DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_uint16, uint16_t) -#define DEFINE_PROP_UINT32(_n, _s, _f, _d) \ - DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_uint32, uint32_t) -#define DEFINE_PROP_INT32(_n, _s, _f, _d) \ - DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_int32, int32_t) -#define DEFINE_PROP_UINT64(_n, _s, _f, _d) \ - DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_uint64, uint64_t) -#define DEFINE_PROP_HEX32(_n, _s, _f, _d) \ - DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_hex32, uint32_t) -#define DEFINE_PROP_HEX64(_n, _s, _f, _d) \ - DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_hex64, uint64_t) -#define DEFINE_PROP_PCI_DEVFN(_n, _s, _f, _d) \ - DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_pci_devfn, uint32_t) - -#define DEFINE_PROP_PTR(_n, _s, _f) \ - DEFINE_PROP(_n, _s, _f, qdev_prop_ptr, void*) -#define DEFINE_PROP_CHR(_n, _s, _f) \ - DEFINE_PROP(_n, _s, _f, qdev_prop_chr, CharDriverState*) -#define DEFINE_PROP_STRING(_n, _s, _f) \ - DEFINE_PROP(_n, _s, _f, qdev_prop_string, char*) -#define DEFINE_PROP_NETDEV(_n, _s, _f) \ - DEFINE_PROP(_n, _s, _f, qdev_prop_netdev, VLANClientState*) -#define DEFINE_PROP_VLAN(_n, _s, _f) \ - DEFINE_PROP(_n, _s, _f, qdev_prop_vlan, VLANState*) -#define DEFINE_PROP_DRIVE(_n, _s, _f) \ - DEFINE_PROP(_n, _s, _f, qdev_prop_drive, DriveInfo*) -#define DEFINE_PROP_MACADDR(_n, _s, _f) \ - DEFINE_PROP(_n, _s, _f, qdev_prop_macaddr, MACAddr) +#define DEFINE_PROP_UINT8(_n, _s, _f, _d, _c) \ + DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_uint8, uint8_t, _c) +#define DEFINE_PROP_UINT16(_n, _s, _f, _d, _c) \ + DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_uint16, uint16_t, _c) +#define DEFINE_PROP_UINT32(_n, _s, _f, _d, _c) \ + DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_uint32, uint32_t, _c) +#define DEFINE_PROP_INT32(_n, _s, _f, _d, _c) \ + DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_int32, int32_t, _c) +#define DEFINE_PROP_UINT64(_n, _s, _f, _d, _c) \ + DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_uint64, uint64_t, _c) +#define DEFINE_PROP_HEX32(_n, _s, _f, _d, _c) \ + DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_hex32, uint32_t, _c) +#define DEFINE_PROP_HEX64(_n, _s, _f, _d, _c) \ + DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_hex64, uint64_t, _c) +#define DEFINE_PROP_PCI_DEVFN(_n, _s, _f, _d, _c) \ + DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_pci_devfn, uint32_t, _c) + +#define DEFINE_PROP_PTR(_n, _s, _f, _c) \ + DEFINE_PROP(_n, _s, _f, qdev_prop_ptr, void*, _c) +#define DEFINE_PROP_CHR(_n, _s, _f, _c) \ + DEFINE_PROP(_n, _s, _f, qdev_prop_chr, CharDriverState*, _c) +#define DEFINE_PROP_STRING(_n, _s, _f, _c) \ + DEFINE_PROP(_n, _s, _f, qdev_prop_string, char*, _c) +#define DEFINE_PROP_NETDEV(_n, _s, _f, _c) \ + DEFINE_PROP(_n, _s, _f, qdev_prop_netdev, VLANClientState*, _c) +#define DEFINE_PROP_VLAN(_n, _s, _f, _c) \ + DEFINE_PROP(_n, _s, _f, qdev_prop_vlan, VLANState*, _c) +#define DEFINE_PROP_DRIVE(_n, _s, _f, _c) \ + DEFINE_PROP(_n, _s, _f, qdev_prop_drive, DriveInfo*, _c) +#define DEFINE_PROP_MACADDR(_n, _s, _f, _c) \ + DEFINE_PROP(_n, _s, _f, qdev_prop_macaddr, MACAddr, _c) #define DEFINE_PROP_END_OF_LIST() \ {} diff --git a/hw/s390-virtio-bus.c b/hw/s390-virtio-bus.c index fe6884d..7d37b51 100644 --- a/hw/s390-virtio-bus.c +++ b/hw/s390-virtio-bus.c @@ -348,7 +348,7 @@ static VirtIOS390DeviceInfo s390_virtio_serial = { .qdev.size = sizeof(VirtIOS390Device), .qdev.props = (Property[]) { DEFINE_PROP_UINT32("max_ports", VirtIOS390Device, max_virtserial_ports, - 31), + 31, ""), DEFINE_PROP_END_OF_LIST(), }, }; diff --git a/hw/sb16.c b/hw/sb16.c index 78590a7..f2181a2 100644 --- a/hw/sb16.c +++ b/hw/sb16.c @@ -1400,11 +1400,11 @@ static ISADeviceInfo sb16_info = { .qdev.vmsd = &vmstate_sb16, .init = sb16_initfn, .qdev.props = (Property[]) { - DEFINE_PROP_HEX32 ("version", SB16State, ver, 0x0405), /* 4.5 */ - DEFINE_PROP_HEX32 ("iobase", SB16State, port, 0x220), - DEFINE_PROP_UINT32 ("irq", SB16State, irq, 5), - DEFINE_PROP_UINT32 ("dma", SB16State, dma, 1), - DEFINE_PROP_UINT32 ("dma16", SB16State, hdma, 5), + DEFINE_PROP_HEX32 ("version", SB16State, ver, 0x0405, ""), /* 4.5 */ + DEFINE_PROP_HEX32 ("iobase", SB16State, port, 0x220, ""), + DEFINE_PROP_UINT32 ("irq", SB16State, irq, 5, ""), + DEFINE_PROP_UINT32 ("dma", SB16State, dma, 1, ""), + DEFINE_PROP_UINT32 ("dma16", SB16State, hdma, 5, ""), DEFINE_PROP_END_OF_LIST (), }, }; diff --git a/hw/scsi-bus.c b/hw/scsi-bus.c index 383240b..356a97d 100644 --- a/hw/scsi-bus.c +++ b/hw/scsi-bus.c @@ -9,7 +9,7 @@ static struct BusInfo scsi_bus_info = { .name = "SCSI", .size = sizeof(SCSIBus), .props = (Property[]) { - DEFINE_PROP_UINT32("scsi-id", SCSIDevice, id, -1), + DEFINE_PROP_UINT32("scsi-id", SCSIDevice, id, -1, ""), DEFINE_PROP_END_OF_LIST(), }, }; diff --git a/hw/scsi-disk.c b/hw/scsi-disk.c index 4d20919..594a9ad 100644 --- a/hw/scsi-disk.c +++ b/hw/scsi-disk.c @@ -1089,7 +1089,7 @@ static SCSIDeviceInfo scsi_disk_info = { .get_buf = scsi_get_buf, .qdev.props = (Property[]) { DEFINE_BLOCK_PROPERTIES(SCSIDiskState, qdev.conf), - DEFINE_PROP_STRING("ver", SCSIDiskState, version), + DEFINE_PROP_STRING("ver", SCSIDiskState, version, ""), DEFINE_PROP_END_OF_LIST(), }, }; diff --git a/hw/serial.c b/hw/serial.c index 9102edb..561cc07 100644 --- a/hw/serial.c +++ b/hw/serial.c @@ -969,10 +969,10 @@ static ISADeviceInfo serial_isa_info = { .qdev.vmsd = &vmstate_isa_serial, .init = serial_isa_initfn, .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("index", ISASerialState, index, -1), - DEFINE_PROP_HEX32("iobase", ISASerialState, iobase, -1), - DEFINE_PROP_UINT32("irq", ISASerialState, isairq, -1), - DEFINE_PROP_CHR("chardev", ISASerialState, state.chr), + DEFINE_PROP_UINT32("index", ISASerialState, index, -1, ""), + DEFINE_PROP_HEX32("iobase", ISASerialState, iobase, -1, ""), + DEFINE_PROP_UINT32("irq", ISASerialState, isairq, -1, ""), + DEFINE_PROP_CHR("chardev", ISASerialState, state.chr, ""), DEFINE_PROP_END_OF_LIST(), }, }; diff --git a/hw/slavio_timer.c b/hw/slavio_timer.c index d787553..a1d7ec8 100644 --- a/hw/slavio_timer.c +++ b/hw/slavio_timer.c @@ -425,7 +425,7 @@ static SysBusDeviceInfo slavio_timer_info = { .qdev.vmsd = &vmstate_slavio_timer, .qdev.reset = slavio_timer_reset, .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("num_cpus", SLAVIO_TIMERState, num_cpus, 0), + DEFINE_PROP_UINT32("num_cpus", SLAVIO_TIMERState, num_cpus, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/smbus_eeprom.c b/hw/smbus_eeprom.c index 52463e0..9ee8f54 100644 --- a/hw/smbus_eeprom.c +++ b/hw/smbus_eeprom.c @@ -108,7 +108,7 @@ static SMBusDeviceInfo smbus_eeprom_info = { .i2c.qdev.name = "smbus-eeprom", .i2c.qdev.size = sizeof(SMBusEEPROMDevice), .i2c.qdev.props = (Property[]) { - DEFINE_PROP_PTR("data", SMBusEEPROMDevice, data), + DEFINE_PROP_PTR("data", SMBusEEPROMDevice, data, ""), DEFINE_PROP_END_OF_LIST(), }, .init = smbus_eeprom_init, diff --git a/hw/sparc32_dma.c b/hw/sparc32_dma.c index b521707..5e58605 100644 --- a/hw/sparc32_dma.c +++ b/hw/sparc32_dma.c @@ -274,7 +274,7 @@ static SysBusDeviceInfo sparc32_dma_info = { .qdev.vmsd = &vmstate_dma, .qdev.reset = dma_reset, .qdev.props = (Property[]) { - DEFINE_PROP_PTR("iommu_opaque", DMAState, iommu), + DEFINE_PROP_PTR("iommu_opaque", DMAState, iommu, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/sun4m.c b/hw/sun4m.c index 7ba0f76..37c0ce4 100644 --- a/hw/sun4m.c +++ b/hw/sun4m.c @@ -760,7 +760,7 @@ static SysBusDeviceInfo ram_info = { .qdev.name = "memory", .qdev.size = sizeof(RamDevice), .qdev.props = (Property[]) { - DEFINE_PROP_UINT64("size", RamDevice, size, 0), + DEFINE_PROP_UINT64("size", RamDevice, size, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/sun4m_iommu.c b/hw/sun4m_iommu.c index 1dbe077..fa146b8 100644 --- a/hw/sun4m_iommu.c +++ b/hw/sun4m_iommu.c @@ -379,7 +379,7 @@ static SysBusDeviceInfo iommu_info = { .qdev.vmsd = &vmstate_iommu, .qdev.reset = iommu_reset, .qdev.props = (Property[]) { - DEFINE_PROP_HEX32("version", IOMMUState, version, 0), + DEFINE_PROP_HEX32("version", IOMMUState, version, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/sun4u.c b/hw/sun4u.c index 40b5f1f..e70609f 100644 --- a/hw/sun4u.c +++ b/hw/sun4u.c @@ -692,7 +692,7 @@ static SysBusDeviceInfo ram_info = { .qdev.name = "memory", .qdev.size = sizeof(RamDevice), .qdev.props = (Property[]) { - DEFINE_PROP_UINT64("size", RamDevice, size, 0), + DEFINE_PROP_UINT64("size", RamDevice, size, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/syborg_fb.c b/hw/syborg_fb.c index 7be04a3..c707cab 100644 --- a/hw/syborg_fb.c +++ b/hw/syborg_fb.c @@ -536,8 +536,8 @@ static SysBusDeviceInfo syborg_fb_info = { .qdev.name = "syborg,framebuffer", .qdev.size = sizeof(SyborgFBState), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("width", SyborgFBState, cols, 0), - DEFINE_PROP_UINT32("height", SyborgFBState, rows, 0), + DEFINE_PROP_UINT32("width", SyborgFBState, cols, 0, ""), + DEFINE_PROP_UINT32("height", SyborgFBState, rows, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/syborg_interrupt.c b/hw/syborg_interrupt.c index f3a1767..c9c787d 100644 --- a/hw/syborg_interrupt.c +++ b/hw/syborg_interrupt.c @@ -223,7 +223,7 @@ static SysBusDeviceInfo syborg_int_info = { .qdev.name = "syborg,interrupt", .qdev.size = sizeof(SyborgIntState), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("num-interrupts", SyborgIntState, num_irqs, 64), + DEFINE_PROP_UINT32("num-interrupts", SyborgIntState, num_irqs, 64, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/syborg_keyboard.c b/hw/syborg_keyboard.c index 4a562f8..89a0ce9 100644 --- a/hw/syborg_keyboard.c +++ b/hw/syborg_keyboard.c @@ -230,7 +230,7 @@ static SysBusDeviceInfo syborg_keyboard_info = { .qdev.name = "syborg,keyboard", .qdev.size = sizeof(SyborgKeyboardState), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("fifo-size", SyborgKeyboardState, fifo_size, 16), + DEFINE_PROP_UINT32("fifo-size", SyborgKeyboardState, fifo_size, 16, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/syborg_pointer.c b/hw/syborg_pointer.c index 563d730..c5f28d4 100644 --- a/hw/syborg_pointer.c +++ b/hw/syborg_pointer.c @@ -228,8 +228,8 @@ static SysBusDeviceInfo syborg_pointer_info = { .qdev.name = "syborg,pointer", .qdev.size = sizeof(SyborgPointerState), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("fifo-size", SyborgPointerState, fifo_size, 16), - DEFINE_PROP_UINT32("absolute", SyborgPointerState, absolute, 1), + DEFINE_PROP_UINT32("fifo-size", SyborgPointerState, fifo_size, 16, ""), + DEFINE_PROP_UINT32("absolute", SyborgPointerState, absolute, 1, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/syborg_serial.c b/hw/syborg_serial.c index cac00ea..6a2203f 100644 --- a/hw/syborg_serial.c +++ b/hw/syborg_serial.c @@ -345,7 +345,7 @@ static SysBusDeviceInfo syborg_serial_info = { .qdev.name = "syborg,serial", .qdev.size = sizeof(SyborgSerialState), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("fifo-size", SyborgSerialState, fifo_size, 16), + DEFINE_PROP_UINT32("fifo-size", SyborgSerialState, fifo_size, 16, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/syborg_timer.c b/hw/syborg_timer.c index 3e4a447..7edbeed 100644 --- a/hw/syborg_timer.c +++ b/hw/syborg_timer.c @@ -231,7 +231,7 @@ static SysBusDeviceInfo syborg_timer_info = { .qdev.name = "syborg,timer", .qdev.size = sizeof(SyborgTimerState), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("frequency",SyborgTimerState, freq, 0), + DEFINE_PROP_UINT32("frequency",SyborgTimerState, freq, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/tcx.c b/hw/tcx.c index beb30ac..52eb656 100644 --- a/hw/tcx.c +++ b/hw/tcx.c @@ -633,11 +633,11 @@ static SysBusDeviceInfo tcx_info = { .qdev.reset = tcx_reset, .qdev.vmsd = &vmstate_tcx, .qdev.props = (Property[]) { - DEFINE_PROP_TADDR("addr", TCXState, addr, -1), - DEFINE_PROP_HEX32("vram_size", TCXState, vram_size, -1), - DEFINE_PROP_UINT16("width", TCXState, width, -1), - DEFINE_PROP_UINT16("height", TCXState, height, -1), - DEFINE_PROP_UINT16("depth", TCXState, depth, -1), + DEFINE_PROP_TADDR("addr", TCXState, addr, -1, ""), + DEFINE_PROP_HEX32("vram_size", TCXState, vram_size, -1, ""), + DEFINE_PROP_UINT16("width", TCXState, width, -1, ""), + DEFINE_PROP_UINT16("height", TCXState, height, -1, ""), + DEFINE_PROP_UINT16("depth", TCXState, depth, -1, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/usb-ohci.c b/hw/usb-ohci.c index 9f80e15..30a2e7f 100644 --- a/hw/usb-ohci.c +++ b/hw/usb-ohci.c @@ -1778,8 +1778,8 @@ static SysBusDeviceInfo ohci_sysbus_info = { .qdev.desc = "OHCI USB Controller", .qdev.size = sizeof(OHCISysBusState), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("num-ports", OHCISysBusState, num_ports, 3), - DEFINE_PROP_TADDR("dma-offset", OHCISysBusState, dma_offset, 3), + DEFINE_PROP_UINT32("num-ports", OHCISysBusState, num_ports, 3, ""), + DEFINE_PROP_TADDR("dma-offset", OHCISysBusState, dma_offset, 3, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/usb-serial.c b/hw/usb-serial.c index 5b2483a..a07404c 100644 --- a/hw/usb-serial.c +++ b/hw/usb-serial.c @@ -637,9 +637,9 @@ static struct USBDeviceInfo serial_info = { .usbdevice_name = "serial", .usbdevice_init = usb_serial_init, .qdev.props = (Property[]) { - DEFINE_PROP_CHR("chardev", USBSerialState, cs), - DEFINE_PROP_HEX32("vendorid", USBSerialState, vendorid, 0x0403), - DEFINE_PROP_HEX32("productid", USBSerialState, productid, 0x6001), + DEFINE_PROP_CHR("chardev", USBSerialState, cs, ""), + DEFINE_PROP_HEX32("vendorid", USBSerialState, vendorid, 0x0403, ""), + DEFINE_PROP_HEX32("productid", USBSerialState, productid, 0x6001, ""), DEFINE_PROP_END_OF_LIST(), }, }; @@ -657,9 +657,9 @@ static struct USBDeviceInfo braille_info = { .usbdevice_name = "braille", .usbdevice_init = usb_braille_init, .qdev.props = (Property[]) { - DEFINE_PROP_CHR("chardev", USBSerialState, cs), - DEFINE_PROP_HEX32("vendorid", USBSerialState, vendorid, 0x0403), - DEFINE_PROP_HEX32("productid", USBSerialState, productid, 0xfe72), + DEFINE_PROP_CHR("chardev", USBSerialState, cs, ""), + DEFINE_PROP_HEX32("vendorid", USBSerialState, vendorid, 0x0403, ""), + DEFINE_PROP_HEX32("productid", USBSerialState, productid, 0xfe72, ""), DEFINE_PROP_END_OF_LIST(), }, }; diff --git a/hw/vga-pci.c b/hw/vga-pci.c index eef78ed..a4688ea 100644 --- a/hw/vga-pci.c +++ b/hw/vga-pci.c @@ -132,8 +132,8 @@ static PCIDeviceInfo vga_info = { .init = pci_vga_initfn, .config_write = pci_vga_write_config, .qdev.props = (Property[]) { - DEFINE_PROP_HEX32("bios-offset", PCIVGAState, vga.bios_offset, 0), - DEFINE_PROP_HEX32("bios-size", PCIVGAState, vga.bios_size, 0), + DEFINE_PROP_HEX32("bios-offset", PCIVGAState, vga.bios_offset, 0, ""), + DEFINE_PROP_HEX32("bios-size", PCIVGAState, vga.bios_size, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/virtio-blk.h b/hw/virtio-blk.h index 7a7ece3..00af0e8 100644 --- a/hw/virtio-blk.h +++ b/hw/virtio-blk.h @@ -94,8 +94,8 @@ struct virtio_scsi_inhdr #ifdef __linux__ #define DEFINE_VIRTIO_BLK_FEATURES(_state, _field) \ - DEFINE_VIRTIO_COMMON_FEATURES(_state, _field), \ - DEFINE_PROP_BIT("scsi", _state, _field, VIRTIO_BLK_F_SCSI, true) + DEFINE_VIRTIO_COMMON_FEATURES(_state, _field), \ + DEFINE_PROP_BIT("scsi", _state, _field, VIRTIO_BLK_F_SCSI, true, "") #else #define DEFINE_VIRTIO_BLK_FEATURES(_state, _field) \ DEFINE_VIRTIO_COMMON_FEATURES(_state, _field) diff --git a/hw/virtio-console.c b/hw/virtio-console.c index caea11f..ccd277a 100644 --- a/hw/virtio-console.c +++ b/hw/virtio-console.c @@ -95,10 +95,11 @@ static VirtIOSerialPortInfo virtconsole_info = { .init = virtconsole_initfn, .exit = virtconsole_exitfn, .qdev.props = (Property[]) { - DEFINE_PROP_UINT8("is_console", VirtConsole, port.is_console, 1), - DEFINE_PROP_UINT32("nr", VirtConsole, port.id, VIRTIO_CONSOLE_BAD_ID), - DEFINE_PROP_CHR("chardev", VirtConsole, chr), - DEFINE_PROP_STRING("name", VirtConsole, port.name), + DEFINE_PROP_UINT8("is_console", VirtConsole, port.is_console, 1, ""), + DEFINE_PROP_UINT32("nr", VirtConsole, port.id, VIRTIO_CONSOLE_BAD_ID, + ""), + DEFINE_PROP_CHR("chardev", VirtConsole, chr, ""), + DEFINE_PROP_STRING("name", VirtConsole, port.name, ""), DEFINE_PROP_END_OF_LIST(), }, }; @@ -131,9 +132,10 @@ static VirtIOSerialPortInfo virtserialport_info = { .init = virtserialport_initfn, .exit = virtconsole_exitfn, .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("nr", VirtConsole, port.id, VIRTIO_CONSOLE_BAD_ID), - DEFINE_PROP_CHR("chardev", VirtConsole, chr), - DEFINE_PROP_STRING("name", VirtConsole, port.name), + DEFINE_PROP_UINT32("nr", VirtConsole, port.id, VIRTIO_CONSOLE_BAD_ID, + ""), + DEFINE_PROP_CHR("chardev", VirtConsole, chr, ""), + DEFINE_PROP_STRING("name", VirtConsole, port.name, ""), DEFINE_PROP_END_OF_LIST(), }, }; diff --git a/hw/virtio-net.h b/hw/virtio-net.h index 235f1a9..b322ee4 100644 --- a/hw/virtio-net.h +++ b/hw/virtio-net.h @@ -154,22 +154,37 @@ struct virtio_net_ctrl_mac { #define VIRTIO_NET_CTRL_VLAN_DEL 1 #define DEFINE_VIRTIO_NET_FEATURES(_state, _field) \ - DEFINE_VIRTIO_COMMON_FEATURES(_state, _field), \ - DEFINE_PROP_BIT("csum", _state, _field, VIRTIO_NET_F_CSUM, true), \ - DEFINE_PROP_BIT("guest_csum", _state, _field, VIRTIO_NET_F_GUEST_CSUM, true), \ - DEFINE_PROP_BIT("gso", _state, _field, VIRTIO_NET_F_GSO, true), \ - DEFINE_PROP_BIT("guest_tso4", _state, _field, VIRTIO_NET_F_GUEST_TSO4, true), \ - DEFINE_PROP_BIT("guest_tso6", _state, _field, VIRTIO_NET_F_GUEST_TSO6, true), \ - DEFINE_PROP_BIT("guest_ecn", _state, _field, VIRTIO_NET_F_GUEST_ECN, true), \ - DEFINE_PROP_BIT("guest_ufo", _state, _field, VIRTIO_NET_F_GUEST_UFO, true), \ - DEFINE_PROP_BIT("host_tso4", _state, _field, VIRTIO_NET_F_HOST_TSO4, true), \ - DEFINE_PROP_BIT("host_tso6", _state, _field, VIRTIO_NET_F_HOST_TSO6, true), \ - DEFINE_PROP_BIT("host_ecn", _state, _field, VIRTIO_NET_F_HOST_ECN, true), \ - DEFINE_PROP_BIT("host_ufo", _state, _field, VIRTIO_NET_F_HOST_UFO, true), \ - DEFINE_PROP_BIT("mrg_rxbuf", _state, _field, VIRTIO_NET_F_MRG_RXBUF, true), \ - DEFINE_PROP_BIT("status", _state, _field, VIRTIO_NET_F_STATUS, true), \ - DEFINE_PROP_BIT("ctrl_vq", _state, _field, VIRTIO_NET_F_CTRL_VQ, true), \ - DEFINE_PROP_BIT("ctrl_rx", _state, _field, VIRTIO_NET_F_CTRL_RX, true), \ - DEFINE_PROP_BIT("ctrl_vlan", _state, _field, VIRTIO_NET_F_CTRL_VLAN, true), \ - DEFINE_PROP_BIT("ctrl_rx_extra", _state, _field, VIRTIO_NET_F_CTRL_RX_EXTRA, true) + DEFINE_VIRTIO_COMMON_FEATURES(_state, _field), \ + DEFINE_PROP_BIT("csum", _state, _field, VIRTIO_NET_F_CSUM, true, ""), \ + DEFINE_PROP_BIT("guest_csum", _state, _field, VIRTIO_NET_F_GUEST_CSUM, \ + true, ""), \ + DEFINE_PROP_BIT("gso", _state, _field, VIRTIO_NET_F_GSO, true, ""), \ + DEFINE_PROP_BIT("guest_tso4", _state, _field, VIRTIO_NET_F_GUEST_TSO4, \ + true, ""), \ + DEFINE_PROP_BIT("guest_tso6", _state, _field, VIRTIO_NET_F_GUEST_TSO6, \ + true, ""), \ + DEFINE_PROP_BIT("guest_ecn", _state, _field, VIRTIO_NET_F_GUEST_ECN, \ + true, ""), \ + DEFINE_PROP_BIT("guest_ufo", _state, _field, VIRTIO_NET_F_GUEST_UFO, \ + true, ""), \ + DEFINE_PROP_BIT("host_tso4", _state, _field, VIRTIO_NET_F_HOST_TSO4, \ + true, ""), \ + DEFINE_PROP_BIT("host_tso6", _state, _field, VIRTIO_NET_F_HOST_TSO6, \ + true, ""), \ + DEFINE_PROP_BIT("host_ecn", _state, _field, VIRTIO_NET_F_HOST_ECN, \ + true, ""), \ + DEFINE_PROP_BIT("host_ufo", _state, _field, VIRTIO_NET_F_HOST_UFO, \ + true, ""), \ + DEFINE_PROP_BIT("mrg_rxbuf", _state, _field, VIRTIO_NET_F_MRG_RXBUF, \ + true, ""), \ + DEFINE_PROP_BIT("status", _state, _field, VIRTIO_NET_F_STATUS, true, \ + ""), \ + DEFINE_PROP_BIT("ctrl_vq", _state, _field, VIRTIO_NET_F_CTRL_VQ, true, \ + ""), \ + DEFINE_PROP_BIT("ctrl_rx", _state, _field, VIRTIO_NET_F_CTRL_RX, true, \ + ""), \ + DEFINE_PROP_BIT("ctrl_vlan", _state, _field, VIRTIO_NET_F_CTRL_VLAN, \ + true, ""), \ + DEFINE_PROP_BIT("ctrl_rx_extra", _state, _field, \ + VIRTIO_NET_F_CTRL_RX_EXTRA, true, "") #endif diff --git a/hw/virtio-pci.c b/hw/virtio-pci.c index 7ddf612..5dd910c 100644 --- a/hw/virtio-pci.c +++ b/hw/virtio-pci.c @@ -666,9 +666,9 @@ static PCIDeviceInfo virtio_info[] = { .init = virtio_blk_init_pci, .exit = virtio_blk_exit_pci, .qdev.props = (Property[]) { - DEFINE_PROP_HEX32("class", VirtIOPCIProxy, class_code, 0), + DEFINE_PROP_HEX32("class", VirtIOPCIProxy, class_code, 0, ""), DEFINE_BLOCK_PROPERTIES(VirtIOPCIProxy, block), - DEFINE_PROP_UINT32("vectors", VirtIOPCIProxy, nvectors, 2), + DEFINE_PROP_UINT32("vectors", VirtIOPCIProxy, nvectors, 2, ""), DEFINE_VIRTIO_BLK_FEATURES(VirtIOPCIProxy, host_features), DEFINE_PROP_END_OF_LIST(), }, @@ -680,7 +680,7 @@ static PCIDeviceInfo virtio_info[] = { .exit = virtio_net_exit_pci, .romfile = "pxe-virtio.bin", .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("vectors", VirtIOPCIProxy, nvectors, 3), + DEFINE_PROP_UINT32("vectors", VirtIOPCIProxy, nvectors, 3, ""), DEFINE_VIRTIO_NET_FEATURES(VirtIOPCIProxy, host_features), DEFINE_NIC_PROPERTIES(VirtIOPCIProxy, nic), DEFINE_PROP_END_OF_LIST(), @@ -694,11 +694,11 @@ static PCIDeviceInfo virtio_info[] = { .exit = virtio_exit_pci, .qdev.props = (Property[]) { DEFINE_PROP_UINT32("vectors", VirtIOPCIProxy, nvectors, - DEV_NVECTORS_UNSPECIFIED), - DEFINE_PROP_HEX32("class", VirtIOPCIProxy, class_code, 0), + DEV_NVECTORS_UNSPECIFIED, ""), + DEFINE_PROP_HEX32("class", VirtIOPCIProxy, class_code, 0, ""), DEFINE_VIRTIO_COMMON_FEATURES(VirtIOPCIProxy, host_features), DEFINE_PROP_UINT32("max_ports", VirtIOPCIProxy, max_virtserial_ports, - 31), + 31, ""), DEFINE_PROP_END_OF_LIST(), }, .qdev.reset = virtio_pci_reset, @@ -719,8 +719,8 @@ static PCIDeviceInfo virtio_info[] = { .init = virtio_9p_init_pci, .qdev.props = (Property[]) { DEFINE_VIRTIO_COMMON_FEATURES(VirtIOPCIProxy, host_features), - DEFINE_PROP_STRING("mount_tag", VirtIOPCIProxy, fsconf.tag), - DEFINE_PROP_STRING("fsdev", VirtIOPCIProxy, fsconf.fsdev_id), + DEFINE_PROP_STRING("mount_tag", VirtIOPCIProxy, fsconf.tag, ""), + DEFINE_PROP_STRING("fsdev", VirtIOPCIProxy, fsconf.fsdev_id, ""), DEFINE_PROP_END_OF_LIST(), }, }, { diff --git a/hw/virtio.h b/hw/virtio.h index e4306cd..21f0c4c 100644 --- a/hw/virtio.h +++ b/hw/virtio.h @@ -197,7 +197,7 @@ void virtio_net_exit(VirtIODevice *vdev); #define DEFINE_VIRTIO_COMMON_FEATURES(_state, _field) \ DEFINE_PROP_BIT("indirect_desc", _state, _field, \ - VIRTIO_RING_F_INDIRECT_DESC, true) + VIRTIO_RING_F_INDIRECT_DESC, true, "") target_phys_addr_t virtio_queue_get_desc_addr(VirtIODevice *vdev, int n); target_phys_addr_t virtio_queue_get_avail_addr(VirtIODevice *vdev, int n); diff --git a/hw/xilinx_ethlite.c b/hw/xilinx_ethlite.c index 37e33ec..80fa5b6 100644 --- a/hw/xilinx_ethlite.c +++ b/hw/xilinx_ethlite.c @@ -239,8 +239,10 @@ static SysBusDeviceInfo xilinx_ethlite_info = { .qdev.name = "xilinx,ethlite", .qdev.size = sizeof(struct xlx_ethlite), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("txpingpong", struct xlx_ethlite, c_tx_pingpong, 1), - DEFINE_PROP_UINT32("rxpingpong", struct xlx_ethlite, c_rx_pingpong, 1), + DEFINE_PROP_UINT32("txpingpong", struct xlx_ethlite, c_tx_pingpong, 1, + ""), + DEFINE_PROP_UINT32("rxpingpong", struct xlx_ethlite, c_rx_pingpong, 1, + ""), DEFINE_NIC_PROPERTIES(struct xlx_ethlite, conf), DEFINE_PROP_END_OF_LIST(), } diff --git a/hw/xilinx_intc.c b/hw/xilinx_intc.c index 8ef6474..c33e878 100644 --- a/hw/xilinx_intc.c +++ b/hw/xilinx_intc.c @@ -163,7 +163,8 @@ static SysBusDeviceInfo xilinx_intc_info = { .qdev.name = "xilinx,intc", .qdev.size = sizeof(struct xlx_pic), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("kind-of-intr", struct xlx_pic, c_kind_of_intr, 0), + DEFINE_PROP_UINT32("kind-of-intr", struct xlx_pic, c_kind_of_intr, 0, + ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/hw/xilinx_timer.c b/hw/xilinx_timer.c index e2d9541..65155e7 100644 --- a/hw/xilinx_timer.c +++ b/hw/xilinx_timer.c @@ -220,8 +220,8 @@ static SysBusDeviceInfo xilinx_timer_info = { .qdev.name = "xilinx,timer", .qdev.size = sizeof(struct timerblock), .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("frequency", struct timerblock, freq_hz, 0), - DEFINE_PROP_UINT32("nr-timers", struct timerblock, nr_timers, 0), + DEFINE_PROP_UINT32("frequency", struct timerblock, freq_hz, 0, ""), + DEFINE_PROP_UINT32("nr-timers", struct timerblock, nr_timers, 0, ""), DEFINE_PROP_END_OF_LIST(), } }; diff --git a/net.h b/net.h index b83f615..0e9cc5d 100644 --- a/net.h +++ b/net.h @@ -21,9 +21,9 @@ typedef struct NICConf { } NICConf; #define DEFINE_NIC_PROPERTIES(_state, _conf) \ - DEFINE_PROP_MACADDR("mac", _state, _conf.macaddr), \ - DEFINE_PROP_VLAN("vlan", _state, _conf.vlan), \ - DEFINE_PROP_NETDEV("netdev", _state, _conf.peer) + DEFINE_PROP_MACADDR("mac", _state, _conf.macaddr, ""), \ + DEFINE_PROP_VLAN("vlan", _state, _conf.vlan, ""), \ + DEFINE_PROP_NETDEV("netdev", _state, _conf.peer, "") /* VLANs support */ diff --git a/usb-linux.c b/usb-linux.c index 88273ff..fd62a94 100644 --- a/usb-linux.c +++ b/usb-linux.c @@ -1018,10 +1018,10 @@ static struct USBDeviceInfo usb_host_dev_info = { .usbdevice_name = "host", .usbdevice_init = usb_host_device_open, .qdev.props = (Property[]) { - DEFINE_PROP_UINT32("hostbus", USBHostDevice, match.bus_num, 0), - DEFINE_PROP_UINT32("hostaddr", USBHostDevice, match.addr, 0), - DEFINE_PROP_HEX32("vendorid", USBHostDevice, match.vendor_id, 0), - DEFINE_PROP_HEX32("productid", USBHostDevice, match.product_id, 0), + DEFINE_PROP_UINT32("hostbus", USBHostDevice, match.bus_num, 0, ""), + DEFINE_PROP_UINT32("hostaddr", USBHostDevice, match.addr, 0, ""), + DEFINE_PROP_HEX32("vendorid", USBHostDevice, match.vendor_id, 0, ""), + DEFINE_PROP_HEX32("productid", USBHostDevice, match.product_id, 0, ""), DEFINE_PROP_END_OF_LIST(), }, };