diff options
author | Philippe Mathieu-Daudé <philmd@redhat.com> | 2019-09-26 15:42:11 +0200 |
---|---|---|
committer | Philippe Mathieu-Daudé <philmd@linaro.org> | 2023-01-13 16:22:57 +0100 |
commit | 4dd5cb5d847ed887dd0a00c602b08bade6f6ffa2 (patch) | |
tree | 242b24aba995e4a7b8619d0257bfaf37f1f9d97e /hw/pci-host/bonito.c | |
parent | e8dc34196b2a81b21469f6d95afc390ef645e63b (diff) | |
download | qemu-4dd5cb5d847ed887dd0a00c602b08bade6f6ffa2.zip qemu-4dd5cb5d847ed887dd0a00c602b08bade6f6ffa2.tar.gz qemu-4dd5cb5d847ed887dd0a00c602b08bade6f6ffa2.tar.bz2 |
hw/pci-host/bonito: Convert to 3-phase reset
Convert the TYPE_PCI_BONITO class to use 3-phase reset.
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230105130710.49264-2-philmd@linaro.org>
Diffstat (limited to 'hw/pci-host/bonito.c')
-rw-r--r-- | hw/pci-host/bonito.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/hw/pci-host/bonito.c b/hw/pci-host/bonito.c index f04f3ad..450eb29 100644 --- a/hw/pci-host/bonito.c +++ b/hw/pci-host/bonito.c @@ -47,7 +47,6 @@ #include "hw/mips/mips.h" #include "hw/pci/pci_host.h" #include "migration/vmstate.h" -#include "sysemu/reset.h" #include "sysemu/runstate.h" #include "hw/misc/unimp.h" #include "hw/registerfields.h" @@ -593,9 +592,9 @@ static int pci_bonito_map_irq(PCIDevice *pci_dev, int irq_num) } } -static void bonito_reset(void *opaque) +static void bonito_reset_hold(Object *obj) { - PCIBonitoState *s = opaque; + PCIBonitoState *s = PCI_BONITO(obj); uint32_t val = 0; /* set the default value of north bridge registers */ @@ -739,8 +738,6 @@ static void bonito_realize(PCIDevice *dev, Error **errp) pci_set_byte(dev->config + PCI_MIN_GNT, 0x3c); pci_set_byte(dev->config + PCI_MAX_LAT, 0x00); - - qemu_register_reset(bonito_reset, s); } PCIBus *bonito_init(qemu_irq *pic) @@ -770,7 +767,9 @@ static void bonito_class_init(ObjectClass *klass, void *data) { DeviceClass *dc = DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); + ResettableClass *rc = RESETTABLE_CLASS(klass); + rc->phases.hold = bonito_reset_hold; k->realize = bonito_realize; k->vendor_id = 0xdf53; k->device_id = 0x00d5; |