diff options
| author | Bernhard Beschow <shentey@gmail.com> | 2024-02-24 14:58:50 +0100 |
|---|---|---|
| committer | Philippe Mathieu-Daudé <philmd@linaro.org> | 2024-02-27 09:37:30 +0100 |
| commit | 99e1c1137b6f339be1e4b76e243ad7b7c3d3cb8c (patch) | |
| tree | cfa9c310123e7ea548a151d5d5dcc5836bffe572 /hw/i386/pc_q35.c | |
| parent | 929cfe9885bfe71525df8ef054426196d6596b2c (diff) | |
| download | focaccia-qemu-99e1c1137b6f339be1e4b76e243ad7b7c3d3cb8c.tar.gz focaccia-qemu-99e1c1137b6f339be1e4b76e243ad7b7c3d3cb8c.zip | |
hw/i386/pc: Populate RTC attribute directly
Both the piix and the q35 machines introduce an rtc_state variable and defer the initialization of the X86MachineState::rtc attribute to pc_cmos_init(). Resolve this complication which makes pc_cmos_init() do what it says on the tin. Signed-off-by: Bernhard Beschow <shentey@gmail.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Zhao Liu <zhao1.liu@intel.com> Message-ID: <20240224135851.100361-6-shentey@gmail.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Diffstat (limited to 'hw/i386/pc_q35.c')
| -rw-r--r-- | hw/i386/pc_q35.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c index 9e4b8f79c2..45a4102e75 100644 --- a/hw/i386/pc_q35.c +++ b/hw/i386/pc_q35.c @@ -125,7 +125,6 @@ static void pc_q35_init(MachineState *machine) Object *phb; PCIDevice *lpc; DeviceState *lpc_dev; - ISADevice *rtc_state; MemoryRegion *system_memory = get_system_memory(); MemoryRegion *system_io = get_system_io(); MemoryRegion *pci_memory = g_new(MemoryRegion, 1); @@ -232,7 +231,7 @@ static void pc_q35_init(MachineState *machine) } pci_realize_and_unref(lpc, pcms->pcibus, &error_fatal); - rtc_state = ISA_DEVICE(object_resolve_path_component(OBJECT(lpc), "rtc")); + x86ms->rtc = ISA_DEVICE(object_resolve_path_component(OBJECT(lpc), "rtc")); object_property_add_link(OBJECT(machine), PC_MACHINE_ACPI_DEVICE_PROP, TYPE_HOTPLUG_HANDLER, @@ -274,7 +273,7 @@ static void pc_q35_init(MachineState *machine) } /* init basic PC hardware */ - pc_basic_device_init(pcms, isa_bus, x86ms->gsi, rtc_state, !mc->no_floppy, + pc_basic_device_init(pcms, isa_bus, x86ms->gsi, x86ms->rtc, !mc->no_floppy, 0xff0104); if (pcms->sata_enabled) { @@ -312,7 +311,7 @@ static void pc_q35_init(MachineState *machine) smbus_eeprom_init(pcms->smbus, 8, NULL, 0); } - pc_cmos_init(pcms, rtc_state); + pc_cmos_init(pcms, x86ms->rtc); /* the rest devices to which pci devfn is automatically assigned */ pc_vga_init(isa_bus, pcms->pcibus); |