All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eduardo Habkost <ehabkost@redhat.com>
To: qemu-devel@nongnu.org
Cc: John Snow <jsnow@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
	"Daniel P. Berrange" <berrange@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>
Subject: [PATCH 22/24] i440fx: Register i440FX-pcihost properties as class properties
Date: Mon, 21 Sep 2020 18:10:43 -0400	[thread overview]
Message-ID: <20200921221045.699690-23-ehabkost@redhat.com> (raw)
In-Reply-To: <20200921221045.699690-1-ehabkost@redhat.com>

Class properties make QOM introspection simpler and easier, as
they don't require an object to be instantiated.

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
Cc: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
Cc: qemu-devel@nongnu.org
---
 hw/pci-host/i440fx.c | 32 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/hw/pci-host/i440fx.c b/hw/pci-host/i440fx.c
index 93c62235ca7..4454ba06621 100644
--- a/hw/pci-host/i440fx.c
+++ b/hw/pci-host/i440fx.c
@@ -212,22 +212,6 @@ static void i440fx_pcihost_initfn(Object *obj)
                           "pci-conf-idx", 4);
     memory_region_init_io(&s->data_mem, obj, &pci_host_data_le_ops, s,
                           "pci-conf-data", 4);
-
-    object_property_add(obj, PCI_HOST_PROP_PCI_HOLE_START, "uint32",
-                        i440fx_pcihost_get_pci_hole_start,
-                        NULL, NULL, NULL);
-
-    object_property_add(obj, PCI_HOST_PROP_PCI_HOLE_END, "uint32",
-                        i440fx_pcihost_get_pci_hole_end,
-                        NULL, NULL, NULL);
-
-    object_property_add(obj, PCI_HOST_PROP_PCI_HOLE64_START, "uint64",
-                        i440fx_pcihost_get_pci_hole64_start,
-                        NULL, NULL, NULL);
-
-    object_property_add(obj, PCI_HOST_PROP_PCI_HOLE64_END, "uint64",
-                        i440fx_pcihost_get_pci_hole64_end,
-                        NULL, NULL, NULL);
 }
 
 static void i440fx_pcihost_realize(DeviceState *dev, Error **errp)
@@ -403,6 +387,22 @@ static void i440fx_pcihost_class_init(ObjectClass *klass, void *data)
     device_class_set_props(dc, i440fx_props);
     /* Reason: needs to be wired up by pc_init1 */
     dc->user_creatable = false;
+
+    object_class_property_add(klass, PCI_HOST_PROP_PCI_HOLE_START, "uint32",
+                              i440fx_pcihost_get_pci_hole_start,
+                              NULL, NULL, NULL);
+
+    object_class_property_add(klass, PCI_HOST_PROP_PCI_HOLE_END, "uint32",
+                              i440fx_pcihost_get_pci_hole_end,
+                              NULL, NULL, NULL);
+
+    object_class_property_add(klass, PCI_HOST_PROP_PCI_HOLE64_START, "uint64",
+                              i440fx_pcihost_get_pci_hole64_start,
+                              NULL, NULL, NULL);
+
+    object_class_property_add(klass, PCI_HOST_PROP_PCI_HOLE64_END, "uint64",
+                              i440fx_pcihost_get_pci_hole64_end,
+                              NULL, NULL, NULL);
 }
 
 static const TypeInfo i440fx_pcihost_info = {
-- 
2.26.2



  parent reply	other threads:[~2020-09-21 22:33 UTC|newest]

Thread overview: 67+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-21 22:10 [PATCH 00/24] qom: Convert some properties to class properties Eduardo Habkost
2020-09-21 22:10 ` [PATCH 01/24] cryptodev-vhost-user: Register "chardev" as class property Eduardo Habkost
2020-09-22  1:27   ` Gonglei (Arei)
2020-09-21 22:10 ` [PATCH 02/24] cryptodev-backend: " Eduardo Habkost
2020-09-22  1:27   ` Gonglei (Arei)
2020-09-21 22:10 ` [PATCH 03/24] rng-egd: " Eduardo Habkost
2020-09-23  9:59   ` Daniel P. Berrangé
2020-09-21 22:10 ` [PATCH 04/24] rng-random: register "filename" " Eduardo Habkost
2020-09-23  9:59   ` Daniel P. Berrangé
2020-09-21 22:10 ` [PATCH 05/24] vhost-user: Register "chardev" " Eduardo Habkost
2020-10-08  6:58   ` Marc-André Lureau
2020-10-23 18:16   ` Igor Mammedov
2020-10-30  8:56   ` Michael S. Tsirkin
2020-09-21 22:10 ` [PATCH 06/24] vexpress: Register "secure" " Eduardo Habkost
2020-09-21 22:10 ` [PATCH 07/24] rng: Register "opened" " Eduardo Habkost
2020-09-23 10:00   ` Daniel P. Berrangé
2020-09-21 22:10 ` [PATCH 08/24] vexpress-a15: Register "virtualization" " Eduardo Habkost
2020-10-23 18:19   ` Igor Mammedov
2020-09-21 22:10 ` [PATCH 09/24] input-linux: Register properties as class properties Eduardo Habkost
2020-09-23 10:01   ` Daniel P. Berrangé
2020-09-21 22:10 ` [PATCH 10/24] input-barrier: " Eduardo Habkost
2020-09-23 10:02   ` Daniel P. Berrangé
2020-09-21 22:10 ` [PATCH 11/24] tmp421: " Eduardo Habkost
2020-10-23 18:21   ` Igor Mammedov
2020-09-21 22:10 ` [PATCH 12/24] s390x: Register all CPU " Eduardo Habkost
2020-09-22  6:47   ` David Hildenbrand
2020-09-22  9:54   ` Cornelia Huck
2020-09-21 22:10 ` [PATCH 13/24] i386: Register most " Eduardo Habkost
2020-09-22  6:41   ` Igor Mammedov
2020-09-22 12:44     ` Eduardo Habkost
2020-09-23  8:43   ` Igor Mammedov
2020-09-21 22:10 ` [PATCH 14/24] i386: Register feature bit " Eduardo Habkost
2020-09-22  6:47   ` Igor Mammedov
2020-09-22 12:47   ` Eduardo Habkost
2020-09-21 22:10 ` [PATCH 15/24] arm/virt: Register most " Eduardo Habkost
2020-10-23 18:26   ` Igor Mammedov
2020-09-21 22:10 ` [PATCH 16/24] virt: Register "its" as class property Eduardo Habkost
2020-10-23 18:33   ` Igor Mammedov
2020-11-02 11:12   ` Peter Maydell
2020-09-21 22:10 ` [PATCH 17/24] cpu/core: Register core-id and nr-threads as class properties Eduardo Habkost
2020-09-22  6:48   ` Igor Mammedov
2020-09-21 22:10 ` [PATCH 18/24] arm/cpu64: Register "aarch64" as class property Eduardo Habkost
2020-10-23 18:34   ` Igor Mammedov
2020-09-21 22:10 ` [PATCH 19/24] xlnx-zcu102: Register properties as class properties Eduardo Habkost
2020-09-22 16:44   ` Alistair Francis
2020-09-21 22:10 ` [PATCH 20/24] machine: Register "memory-backend" as class property Eduardo Habkost
2020-09-22  6:39   ` Igor Mammedov
2020-09-21 22:10 ` [PATCH 21/24] vga-pci: Register "big-endian-framebuffer" " Eduardo Habkost
2020-10-08  7:00   ` Marc-André Lureau
2020-09-21 22:10 ` Eduardo Habkost [this message]
2020-09-22  6:49   ` [PATCH 22/24] i440fx: Register i440FX-pcihost properties as class properties Igor Mammedov
2020-10-30  8:56   ` Michael S. Tsirkin
2020-09-21 22:10 ` [PATCH 23/24] sifive_e: Register "revb" as class property Eduardo Habkost
2020-09-21 22:10   ` Eduardo Habkost
2020-09-22 16:45   ` Alistair Francis
2020-09-22 16:45     ` Alistair Francis
2020-09-21 22:10 ` [PATCH 24/24] sifive_u: Register "start-in-flash" " Eduardo Habkost
2020-09-21 22:10   ` Eduardo Habkost
2020-09-22 16:44   ` Alistair Francis
2020-09-22 16:44     ` Alistair Francis
2020-09-22  1:47 ` [PATCH 00/24] qom: Convert some properties to class properties Li Qiang
2020-09-22  4:31   ` Eduardo Habkost
2020-09-22  3:02 ` no-reply
2020-09-22 21:00 ` Eduardo Habkost
2020-09-22 21:00   ` Eduardo Habkost
2020-10-07 22:26   ` Eduardo Habkost
2020-10-07 22:26     ` Eduardo Habkost

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=20200921221045.699690-23-ehabkost@redhat.com \
    --to=ehabkost@redhat.com \
    --cc=berrange@redhat.com \
    --cc=jsnow@redhat.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /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.