[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 10/16] qdev: make the non-legacy pci address propert
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PATCH 10/16] qdev: make the non-legacy pci address property accept an integer |
Date: |
Thu, 2 Feb 2012 17:45:36 +0100 |
PCI addresses are set with qdev_prop_uint32. Thus we make the QOM
property accept a device and function encoded in an 8-bit integer,
instead of the magic dd.f hex string.
Signed-off-by: Paolo Bonzini <address@hidden>
---
hw/qdev-properties.c | 25 +++++++------------------
1 files changed, 7 insertions(+), 18 deletions(-)
diff --git a/hw/qdev-properties.c b/hw/qdev-properties.c
index 4fb5cf8..e4bcc6d 100644
--- a/hw/qdev-properties.c
+++ b/hw/qdev-properties.c
@@ -950,30 +950,19 @@ static int print_pci_devfn(DeviceState *dev, Property
*prop, char *dest, size_t
}
}
-static void get_pci_devfn(Object *obj, Visitor *v, void *opaque,
- const char *name, Error **errp)
-{
- DeviceState *dev = DEVICE(obj);
- Property *prop = opaque;
- uint32_t *ptr = qdev_get_prop_ptr(dev, prop);
- char buffer[32];
- char *p = buffer;
-
- buffer[0] = 0;
- if (*ptr != -1) {
- snprintf(buffer, sizeof(buffer), "%02x.%x", *ptr >> 3, *ptr & 7);
- }
- visit_type_str(v, &p, name, errp);
-}
-
PropertyInfo qdev_prop_pci_devfn = {
.name = "pci-devfn",
.type = PROP_TYPE_UINT32,
.size = sizeof(uint32_t),
.parse = parse_pci_devfn,
.print = print_pci_devfn,
- .get = get_pci_devfn,
- .set = set_generic,
+ .get = get_int32,
+ .set = set_int32,
+ /* FIXME: this should be -1...255, but the address is stored
+ * into an uint32_t rather than int32_t.
+ */
+ .min = 0,
+ .max = 0xFFFFFFFFULL,
};
/* --- public helpers --- */
--
1.7.7.6
- Re: [Qemu-devel] [PATCH 04/16] qom: add QObject-based property get/set wrappers, (continued)
[Qemu-devel] [PATCH 03/16] qom: do not include qdev header file, Paolo Bonzini, 2012/02/02
[Qemu-devel] [PATCH 05/16] qom: add property get/set wrappers for C types, Paolo Bonzini, 2012/02/02
[Qemu-devel] [PATCH 06/16] qdev: remove direct calls to print/parse, Paolo Bonzini, 2012/02/02
[Qemu-devel] [PATCH 09/16] qdev: remove parse/print methods for mac properties, Paolo Bonzini, 2012/02/02
[Qemu-devel] [PATCH 07/16] qdev: allow reusing get/set for legacy property, Paolo Bonzini, 2012/02/02
[Qemu-devel] [PATCH 10/16] qdev: make the non-legacy pci address property accept an integer,
Paolo Bonzini <=
- Re: [Qemu-devel] [PATCH 10/16] qdev: make the non-legacy pci address property accept an integer, Anthony Liguori, 2012/02/02
- Re: [Qemu-devel] [PATCH 10/16] qdev: make the non-legacy pci address property accept an integer, Paolo Bonzini, 2012/02/02
- Re: [Qemu-devel] [PATCH 10/16] qdev: make the non-legacy pci address property accept an integer, Anthony Liguori, 2012/02/03
- Re: [Qemu-devel] [PATCH 10/16] qdev: make the non-legacy pci address property accept an integer, Paolo Bonzini, 2012/02/03
- Re: [Qemu-devel] [PATCH 10/16] qdev: make the non-legacy pci address property accept an integer, Paolo Bonzini, 2012/02/03
- Re: [Qemu-devel] [PATCH 10/16] qdev: make the non-legacy pci address property accept an integer, Anthony Liguori, 2012/02/03
- Re: [Qemu-devel] [PATCH 10/16] qdev: make the non-legacy pci address property accept an integer, Paolo Bonzini, 2012/02/04
- Re: [Qemu-devel] [PATCH 10/16] qdev: make the non-legacy pci address property accept an integer, Paolo Bonzini, 2012/02/04
[Qemu-devel] [PATCH 12/16] qdev: let QOM free properties, Paolo Bonzini, 2012/02/02
[Qemu-devel] [PATCH 08/16] qdev: remove parse method for string properties, Paolo Bonzini, 2012/02/02