[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v4 12/16] piix4: add a mc146818rtc controller as spe
From: |
Hervé Poussineau |
Subject: |
[Qemu-devel] [PATCH v4 12/16] piix4: add a mc146818rtc controller as specified in datasheet |
Date: |
Sat, 6 Jan 2018 16:37:26 +0100 |
Remove mc146818rtc instanciated in malta board, to not have it twice.
Acked-by: Michael S. Tsirkin <address@hidden>
Acked-by: Paolo Bonzini <address@hidden>
Signed-off-by: Hervé Poussineau <address@hidden>
---
hw/isa/piix4.c | 12 ++++++++++++
hw/mips/mips_malta.c | 5 -----
2 files changed, 12 insertions(+), 5 deletions(-)
diff --git a/hw/isa/piix4.c b/hw/isa/piix4.c
index 7a13e83270..0d68fcb193 100644
--- a/hw/isa/piix4.c
+++ b/hw/isa/piix4.c
@@ -31,6 +31,7 @@
#include "hw/char/isa.h"
#include "hw/sysbus.h"
#include "hw/timer/i8254.h"
+#include "hw/timer/mc146818rtc.h"
#include "qapi/error.h"
PCIDevice *piix4_dev;
@@ -43,6 +44,7 @@ typedef struct PIIX4State {
FDCtrlISABus floppy;
ISASerialState serial[2];
ISAParallelState parallel;
+ RTCState rtc;
/* Reset Control Register */
MemoryRegion rcr_mem;
@@ -217,6 +219,15 @@ static void piix4_realize(PCIDevice *pci_dev, Error **errp)
return;
}
+ /* timer */
+ qdev_set_parent_bus(DEVICE(&s->rtc), BUS(isa_bus));
+ object_property_set_bool(OBJECT(&s->rtc), true, "realized", &err);
+ if (err) {
+ error_propagate(errp, err);
+ return;
+ }
+ isa_init_irq(ISA_DEVICE(&s->rtc), &s->rtc.irq, RTC_ISA_IRQ);
+
piix4_dev = pci_dev;
qemu_register_reset(piix4_reset, s);
}
@@ -231,6 +242,7 @@ static void piix4_init(Object *obj)
object_initialize(&s->serial[i], sizeof(s->serial[i]),
TYPE_ISA_SERIAL);
}
object_initialize(&s->parallel, sizeof(s->parallel), TYPE_ISA_PARALLEL);
+ object_initialize(&s->rtc, sizeof(s->rtc), TYPE_MC146818_RTC);
object_property_add_alias(obj, "floppy", OBJECT(&s->floppy), "driveA",
&error_abort);
diff --git a/hw/mips/mips_malta.c b/hw/mips/mips_malta.c
index 30fb30fc0e..3d304a6e0a 100644
--- a/hw/mips/mips_malta.c
+++ b/hw/mips/mips_malta.c
@@ -995,7 +995,6 @@ void mips_malta_init(MachineState *machine)
uint8_t *smbus_eeprom_buf = g_malloc0(smbus_eeprom_size);
int64_t kernel_entry, bootloader_run_addr;
PCIBus *pci_bus;
- ISABus *isa_bus;
qemu_irq cbus_irq, i8259_irq;
PCIDevice *pci;
int piix4_devfn;
@@ -1197,7 +1196,6 @@ void mips_malta_init(MachineState *machine)
qdev_prop_set_chr(dev, "parallel", parallel_hds[0]);
qdev_init_nofail(dev);
- isa_bus = ISA_BUS(qdev_get_child_bus(dev, "isa.0"));
piix4_devfn = pci->devfn;
/* Interrupt controller */
@@ -1213,9 +1211,6 @@ void mips_malta_init(MachineState *machine)
smbus_eeprom_init(smbus, 8, smbus_eeprom_buf, smbus_eeprom_size);
g_free(smbus_eeprom_buf);
- /* Super I/O */
- mc146818_rtc_init(isa_bus, 2000, NULL);
-
/* Network card */
network_init(pci_bus);
--
2.11.0
- Re: [Qemu-devel] [PATCH v4 10/16] piix4: add a i8042 keyboard/mouse controller as specified in datasheet, (continued)
- [Qemu-devel] [PATCH v4 08/16] piix4: add a i8257 dma controller as specified in datasheet, Hervé Poussineau, 2018/01/06
- [Qemu-devel] [PATCH v4 01/16] fdc: move object structures to header file, Hervé Poussineau, 2018/01/06
- [Qemu-devel] [PATCH v4 05/16] piix4: rename some variables in realize function, Hervé Poussineau, 2018/01/06
- [Qemu-devel] [PATCH v4 09/16] piix4: add a i8254 pit controller as specified in datasheet, Hervé Poussineau, 2018/01/06
- [Qemu-devel] [PATCH v4 04/16] mc146818rtc: always register rtc to rtc list, Hervé Poussineau, 2018/01/06
- [Qemu-devel] [PATCH v4 11/16] piix4: add a floppy controller, 1 parallel port and 2 serial ports, Hervé Poussineau, 2018/01/06
- [Qemu-devel] [PATCH v4 13/16] piix4: add a speaker as specified in datasheet, Hervé Poussineau, 2018/01/06
- [Qemu-devel] [PATCH v4 12/16] piix4: add a mc146818rtc controller as specified in datasheet,
Hervé Poussineau <=
- [Qemu-devel] [PATCH v4 15/16] piix4: rename PIIX4 object to piix4-isa, Hervé Poussineau, 2018/01/06
- [Qemu-devel] [PATCH v4 14/16] piix4: convert reset function to QOM, Hervé Poussineau, 2018/01/06
- [Qemu-devel] [PATCH v4 16/16] piix4: we can now instanciate a PIIX4 with -device, Hervé Poussineau, 2018/01/06
- Re: [Qemu-devel] [PATCH v4 00/16] piix4: cleanup and improvements, Philippe Mathieu-Daudé, 2018/01/07