qemu/hw/ppc
Juraj Marcin 1b063fe2df reset: Use ResetType for qemu_devices_reset() and MachineClass::reset()
Currently, both qemu_devices_reset() and MachineClass::reset() use
ShutdownCause for the reason of the reset. However, the Resettable
interface uses ResetState, so ShutdownCause needs to be translated to
ResetType somewhere. Translating it qemu_devices_reset() makes adding
new reset types harder, as they cannot always be matched to a single
ShutdownCause here, and devices may need to check the ResetType to
determine what to reset and if to reset at all.

This patch moves this translation up in the call stack to
qemu_system_reset() and updates all MachineClass children to use the
ResetType instead.

Message-ID: <20240904103722.946194-2-jmarcin@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Juraj Marcin <jmarcin@redhat.com>
Signed-off-by: David Hildenbrand <david@redhat.com>
2024-09-24 11:33:34 +02:00
..
amigaone.c hw/isa/vt82c686: Turn "intr" irq into a named gpio 2024-07-16 20:04:08 +02:00
e500-ccsr.h Use OBJECT_DECLARE_SIMPLE_TYPE when possible 2020-09-18 14:12:32 -04:00
e500.c hw/ppc: use pci_init_nic_devices() 2024-02-02 16:23:47 +00:00
e500.h hw/ppc/e500: Add Freescale eSDHC to e500plat 2022-12-21 14:17:55 -03:00
e500plat.c hw/ppc: Use MachineClass->default_nic in the ppc machines 2023-05-22 09:44:22 +02:00
fdt.c target/ppc: Split page size information into a separate allocation 2018-04-27 18:05:22 +10:00
fw_cfg.c hw/ppc: Implement fw_cfg_arch_key_name() 2019-05-23 14:10:31 +02:00
Kconfig hw/ppc/Kconfig: Add missing SERIAL_ISA dependency to POWERNV machine 2024-08-20 00:49:14 +02:00
mac_newworld.c mac_newworld: change timebase frequency from 100MHz to 25MHz for mac99 machine 2024-03-09 19:17:01 +01:00
mac_oldworld.c hw/ppc: use pci_init_nic_devices() 2024-02-02 16:23:47 +00:00
meson.build ppc/pnv: Begin a more complete ADU LPC model for POWER9/10 2024-07-26 09:21:06 +10:00
mpc8544_guts.c target/ppc: Prefer fast cpu_env() over slower CPU QOM cast macro 2024-03-12 12:04:24 +01:00
mpc8544ds.c hw/ppc: Use MachineClass->default_nic in the ppc machines 2023-05-22 09:44:22 +02:00
pef.c ppc/pef: switch to use confidential_guest_kvm_init/reset() 2024-04-23 17:35:25 +02:00
pegasos2.c reset: Use ResetType for qemu_devices_reset() and MachineClass::reset() 2024-09-24 11:33:34 +02:00
pnv_adu.c ppc/pnv: Implement ADU access to LPC space 2024-07-26 09:21:06 +10:00
pnv_bmc.c hw/ppc/pnv_bmc: Use qdev_new() instead of QOM API 2024-02-22 12:47:40 +01:00
pnv_chiptod.c ppc/pnv: Move timebase state into PnvCore 2024-07-26 09:21:06 +10:00
pnv_core.c ppc/pnv: Add an LPAR per core machine option 2024-07-26 09:21:06 +10:00
pnv_homer.c include/hw/ppc: Split pnv_chip.h off pnv.h 2023-01-20 07:25:10 +01:00
pnv_i2c.c ppc/pnv: I2C controller is not user creatable 2024-03-19 11:56:45 +01:00
pnv_lpc.c ppc/pnv: Implement ADU access to LPC space 2024-07-26 09:21:06 +10:00
pnv_n1_chiplet.c hw/ppc: Add N1 chiplet model 2024-02-23 23:24:42 +10:00
pnv_nest_pervasive.c hw/ppc: Add pnv nest pervasive common chiplet model 2024-02-23 23:24:42 +10:00
pnv_occ.c bulk: Remove pointless QOM casts 2023-06-05 20:48:34 +02:00
pnv_pnor.c block: Change blk_{pread,pwrite}() param order 2022-07-12 12:14:56 +02:00
pnv_psi.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
pnv_sbe.c bulk: Remove pointless QOM casts 2023-06-05 20:48:34 +02:00
pnv_xscom.c ppc/pnv: Begin a more complete ADU LPC model for POWER9/10 2024-07-26 09:21:06 +10:00
pnv.c reset: Use ResetType for qemu_devices_reset() and MachineClass::reset() 2024-09-24 11:33:34 +02:00
ppc4xx_devs.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
ppc4xx_sdram.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
ppc405_boards.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
ppc405_uc.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
ppc405.h ppc4xx_sdram: QOM'ify 2022-10-17 16:15:09 -03:00
ppc440_bamboo.c exec/cpu: Extract page-protection definitions to page-protection.h 2024-05-06 11:17:15 +02:00
ppc440_uc.c hw/ppc/ppc4xx_pci: Extract PCI host definitions to hw/pci-host/ppc4xx.h 2024-02-22 12:47:40 +01:00
ppc440.h ppc440: Remove ppc460ex_pcie_init legacy init function 2023-07-07 04:47:49 -03:00
ppc_booke.c Use g_new() & friends where that makes obvious sense 2022-03-21 15:44:44 +01:00
ppc.c spapr: nested: Introduce H_GUEST_RUN_VCPU hcall. 2024-03-13 02:47:04 +10:00
ppce500_spin.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
prep_systemio.c hw/ppc: Constify VMState 2023-12-30 07:38:06 +11:00
prep.c hw/ppc/prep: Realize ISA bridge before accessing it 2024-02-15 16:58:46 +01:00
rs6000_mc.c hw: Simplify memory_region_init_ram() calls 2024-01-05 16:20:15 +01:00
sam460ex.c exec/cpu: Extract page-protection definitions to page-protection.h 2024-05-06 11:17:15 +02:00
spapr_caps.c spapr: Migrate ail-mode-3 spapr cap 2024-07-26 09:21:06 +10:00
spapr_cpu_core.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
spapr_drc.c hw/ppc: Constify VMState 2023-12-30 07:38:06 +11:00
spapr_events.c qemu/main-loop: rename qemu_cond_wait_iothread() to qemu_cond_wait_bql() 2024-01-08 10:45:43 -05:00
spapr_hcall.c spapr: nested: register nested-hv api hcalls only for cap-nested-hv 2024-03-13 02:47:04 +10:00
spapr_iommu.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
spapr_irq.c hw/ppc: Avoid using Monitor in spapr_irq_print_info() 2024-06-19 12:40:49 +02:00
spapr_nested.c spapr: nested: use bitwise NOT operator for flags check 2024-03-30 18:31:38 +10:00
spapr_numa.c spapr: Remove support for NVIDIA V100 GPU with NVLink2 2023-09-18 07:25:28 -03:00
spapr_nvdimm.c hw/ppc: Constify VMState 2023-12-30 07:38:06 +11:00
spapr_ovec.c hw/ppc: Constify VMState 2023-12-30 07:38:06 +11:00
spapr_pci_vfio.c hw/ppc/Kconfig: Imply VFIO_PCI 2023-12-19 19:03:38 +01:00
spapr_pci.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
spapr_rng.c system/cpus: rename qemu_mutex_lock_iothread() to bql_lock() 2024-01-08 10:45:43 -05:00
spapr_rtas_ddw.c spapr/ddw: Implement 64bit query extension 2022-07-06 10:22:37 -03:00
spapr_rtas.c ppc: qtest already exports qtest_rtas_call() 2023-11-07 15:49:41 -03:00
spapr_rtc.c hw/ppc: Constify VMState 2023-12-30 07:38:06 +11:00
spapr_tpm_proxy.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
spapr_vhyp_mmu.c target/ppc: Unexport some functions from mmu-book3s-v3.h 2024-07-26 09:51:34 +10:00
spapr_vio.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
spapr_vof.c spapr: Free stdout path 2024-07-26 09:21:06 +10:00
spapr.c reset: Use ResetType for qemu_devices_reset() and MachineClass::reset() 2024-09-24 11:33:34 +02:00
trace-events ppc/pnv: Begin a more complete ADU LPC model for POWER9/10 2024-07-26 09:21:06 +10:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00
virtex_ml507.c exec/cpu: Extract page-protection definitions to page-protection.h 2024-05-06 11:17:15 +02:00
vof.c ppc/vof: Fix unaligned FDT property access 2024-07-26 09:21:06 +10:00