[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v5 13/13] hw/isa/vt82c686: Create rtc-time alias in boards instea
From: |
Bernhard Beschow |
Subject: |
[PATCH v5 13/13] hw/isa/vt82c686: Create rtc-time alias in boards instead |
Date: |
Thu, 1 Sep 2022 13:41:27 +0200 |
According to good QOM practice, an object should only deal with objects
of its own sub tree. Having devices create an alias on the machine
object doesn't respect this good practice. To resolve this, create the
alias in the machine's code.
Signed-off-by: Bernhard Beschow <shentey@gmail.com>
---
hw/isa/vt82c686.c | 2 --
hw/mips/fuloong2e.c | 4 ++++
hw/ppc/pegasos2.c | 4 ++++
3 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c
index 48cd4d0036..3f9bd0c04d 100644
--- a/hw/isa/vt82c686.c
+++ b/hw/isa/vt82c686.c
@@ -632,8 +632,6 @@ static void via_isa_realize(PCIDevice *d, Error **errp)
if (!qdev_realize(DEVICE(&s->rtc), BUS(isa_bus), errp)) {
return;
}
- object_property_add_alias(qdev_get_machine(), "rtc-time", OBJECT(&s->rtc),
- "date");
isa_connect_gpio_out(ISA_DEVICE(&s->rtc), 0, s->rtc.isairq);
for (i = 0; i < PCI_CONFIG_HEADER_SIZE; i++) {
diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c
index 3c46215616..b478483706 100644
--- a/hw/mips/fuloong2e.c
+++ b/hw/mips/fuloong2e.c
@@ -295,6 +295,10 @@ static void mips_fuloong2e_init(MachineState *machine)
pci_dev = pci_create_simple_multifunction(pci_bus,
PCI_DEVFN(FULOONG2E_VIA_SLOT, 0),
true, TYPE_VT82C686B_ISA);
+ object_property_add_alias(OBJECT(machine), "rtc-time",
+ object_resolve_path_component(OBJECT(pci_dev),
+ "rtc"),
+ "date");
qdev_connect_gpio_out(DEVICE(pci_dev), 0, env->irq[5]);
dev = DEVICE(object_resolve_path_component(OBJECT(pci_dev), "ide"));
diff --git a/hw/ppc/pegasos2.c b/hw/ppc/pegasos2.c
index 09fdb7557f..49b753c7cc 100644
--- a/hw/ppc/pegasos2.c
+++ b/hw/ppc/pegasos2.c
@@ -161,6 +161,10 @@ static void pegasos2_init(MachineState *machine)
/* VIA VT8231 South Bridge (multifunction PCI device) */
via = pci_create_simple_multifunction(pci_bus, PCI_DEVFN(12, 0), true,
TYPE_VT8231_ISA);
+ object_property_add_alias(OBJECT(machine), "rtc-time",
+ object_resolve_path_component(OBJECT(via),
+ "rtc"),
+ "date");
qdev_connect_gpio_out(DEVICE(via), 0,
qdev_get_gpio_in_named(pm->mv, "gpp", 31));
--
2.37.3
- [PATCH v5 00/13] Instantiate VT82xx functions in host device, Bernhard Beschow, 2022/09/01
- [PATCH v5 02/13] hw/isa/vt82c686: Resolve unneeded attribute, Bernhard Beschow, 2022/09/01
- [PATCH v5 06/13] hw/isa/vt82c686: Instantiate IDE function in host device, Bernhard Beschow, 2022/09/01
- [PATCH v5 09/13] hw/isa/vt82c686: Instantiate PM function in host device, Bernhard Beschow, 2022/09/01
- [PATCH v5 13/13] hw/isa/vt82c686: Create rtc-time alias in boards instead,
Bernhard Beschow <=
- [PATCH v5 08/13] hw/isa/vt82c686: Instantiate USB functions in host device, Bernhard Beschow, 2022/09/01
- [PATCH v5 12/13] hw/isa/vt82c686: Embed RTCState in host device, Bernhard Beschow, 2022/09/01
- [PATCH v5 05/13] hw/isa/vt82c686: Introduce TYPE_VIA_IDE define, Bernhard Beschow, 2022/09/01
- [PATCH v5 11/13] hw/mips/fuloong2e: Inline vt82c686b_southbridge_init() and remove it, Bernhard Beschow, 2022/09/01
- [PATCH v5 10/13] hw/isa/vt82c686: Instantiate AC97 and MC97 functions in host device, Bernhard Beschow, 2022/09/01