qemu-patch-raspberry4/hw/ppc
Roman Kapl 0dfe952dc5 ppc: Prevent inifnite loop in decrementer auto-reload.
If the DECAR register is set to 0, QEMU tries to reload the decrementer with
zero in an inifinite loop. According to PPC documentation, the decrementer is
triggered on 1->0 transition, so avoid reloading the decrementer if if is
already zero.

The problem does not manifest under Linux, but it is valid to set DECAR to zero
(and may make sense as part of decrementer initialization when interrupts are
disabled).

Signed-off-by: Roman Kapl <rka@sysgo.com>
[dwg: Fixed style nit]
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2017-01-31 10:10:14 +11:00
..
e500-ccsr.h ppc: do not use ../ in include files 2013-03-01 13:57:33 +01:00
e500.c hw/ppc: QOM'ify e500.c 2017-01-31 10:10:13 +11:00
e500.h target-ppc: Eliminate redundant and incorrect function booke206_page_size_to_tlb 2016-07-01 09:57:01 +10:00
e500plat.c dma: do not depend on kvm_enabled() 2016-05-19 16:42:28 +02:00
fdt.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
mac.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
mac_newworld.c fw_cfg: move FW_CFG_NB_CPUS out of fw_cfg_init1() 2016-11-16 12:09:58 -02:00
mac_oldworld.c fw_cfg: move FW_CFG_NB_CPUS out of fw_cfg_init1() 2016-11-16 12:09:58 -02:00
Makefile.objs prep: add IBM RS/6000 7020 (40p) memory controller 2017-01-31 10:10:13 +11:00
mpc8544_guts.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
mpc8544ds.c ppc: Clean up includes 2016-01-29 15:07:22 +00:00
pnv.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
pnv_core.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
pnv_lpc.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
pnv_xscom.c kvm: move cpu synchronization code 2017-01-19 22:07:46 +01:00
ppc.c ppc: parse cpu features once 2016-08-13 17:32:58 +10:00
ppc4xx_devs.c qemu-common: push cpu.h inclusion out of qemu-common.h 2016-05-19 16:42:29 +02:00
ppc4xx_pci.c ppc: Clean up includes 2016-01-29 15:07:22 +00:00
ppc405.h Remove unused function declarations 2016-09-15 15:32:22 +03:00
ppc405_boards.c clean-up: removed duplicate #includes 2016-10-28 18:17:24 +03:00
ppc405_uc.c Replaced get_tick_per_sec() by NANOSECONDS_PER_SECOND 2016-03-22 22:20:17 +01:00
ppc440_bamboo.c loader: Add data swap option to load-elf 2016-03-04 11:30:21 +00:00
ppc_booke.c ppc: Prevent inifnite loop in decrementer auto-reload. 2017-01-31 10:10:14 +11:00
ppce500_spin.c hw/ppc: QOM'ify ppce500_spin.c 2017-01-31 10:10:13 +11:00
prep.c prep: add IBM RS/6000 7020 (40p) machine emulation 2017-01-31 10:10:13 +11:00
prep_systemio.c prep: add PReP System I/O 2017-01-31 10:10:13 +11:00
rs6000_mc.c prep: add IBM RS/6000 7020 (40p) memory controller 2017-01-31 10:10:13 +11:00
spapr.c ppc: Rewrite ppc_get_compat_smt_threads() 2017-01-31 10:10:13 +11:00
spapr_cpu_core.c ppc: Clean up and QOMify hypercall emulation 2017-01-31 10:10:13 +11:00
spapr_drc.c hw: Fix typos found by codespell 2017-01-24 23:26:52 +03:00
spapr_events.c spapr: Add DRC count indexed hotplug identifier type 2016-10-28 11:17:35 +11:00
spapr_hcall.c ppc: Add ppc_set_compat_all() 2017-01-31 10:10:14 +11:00
spapr_iommu.c memory: introduce IOMMUOps.notify_flag_changed 2016-09-27 09:00:04 +02:00
spapr_ovec.c spapr: migration support for CAS-negotiated option vectors 2016-11-23 12:00:48 +11:00
spapr_pci.c spapr: Fix 2.7<->2.8 migration of PCI host bridge 2016-11-23 12:00:48 +11:00
spapr_pci_vfio.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
spapr_rng.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
spapr_rtas.c pseries: Consolidate construction of /rtas device tree node 2016-10-28 09:38:26 +11:00
spapr_rtas_ddw.c spapr_pci/spapr_pci_vfio: Support Dynamic DMA Windows (DDW) 2016-07-05 14:31:08 +10:00
spapr_rtc.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
spapr_vio.c hw/ppc: QOM'ify spapr_vio.c 2017-01-31 10:10:13 +11:00
trace-events pseries: Rewrite CAS PVR compatibility logic 2017-01-31 10:10:14 +11:00
virtex_ml507.c qemu-common: push cpu.h inclusion out of qemu-common.h 2016-05-19 16:42:29 +02:00