qemu/hw
Paulo Alcantara 920557971b ich9: add TCO interface emulation
This interface provides some registers within a 32-byte range and can be
acessed through PCI-to-LPC bridge interface (PMBASE + 0x60).

It's commonly used as a watchdog timer to detect system lockups through
SMIs that are generated -- if TCO_EN bit is set -- on every timeout. If
NO_REBOOT bit is not set in GCS (General Control and Status register),
the system will be resetted upon second timeout if TCO_RLD register
wasn't previously written to prevent timeout.

This patch adds support to TCO watchdog logic and few other features
like mapping NMIs to SMIs (NMI2SMI_EN bit), system intruder detection,
etc. are not implemented yet.

Signed-off-by: Paulo Alcantara <pcacjr@zytor.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2015-07-07 13:12:22 +03:00
..
9pfs qerror: Move #include out of qerror.h 2015-06-22 18:20:40 +02:00
acpi ich9: add TCO interface emulation 2015-07-07 13:12:22 +03:00
alpha hw/alpha/typhoon.c: Fix misusing qemu_allocate_irqs for single irq 2015-06-03 14:21:24 +03:00
arm hw/arm/virt: Make block devices default to virtio 2015-06-26 14:22:37 +01:00
audio gus: clean up MemoryRegionPortio 2015-04-27 18:24:18 +02:00
block virito-blk: drop duplicate check 2015-06-24 16:16:04 +01:00
bt bt-sdp: fix broken uuids power-of-2 calculation 2015-04-28 15:36:08 +02:00
char Include qapi/qmp/qerror.h exactly where needed 2015-06-22 18:20:41 +02:00
core virtio, pci fixes, enhancements 2015-06-26 15:57:43 +01:00
cpu icc_bus: fix typo ICC_BRIGDE -> ICC_BRIDGE 2014-11-03 19:51:56 +03:00
cris cris: memory: Replace memory_region_init_ram with memory_region_allocate_system_memory 2015-04-11 20:03:57 +10:00
display hw/display/tcx.c: Fix memory leak 2015-06-23 20:23:39 +03:00
dma Include qapi/qmp/qerror.h exactly where needed 2015-06-22 18:20:41 +02:00
gpio pl061: fix wrong calculation of GPIOMIS register 2015-06-02 14:56:25 +01:00
i2c ACPI: split CONFIG_ACPI into 4 pieces 2015-05-29 11:28:59 +01:00
i386 ich9: add TCO interface emulation 2015-07-07 13:12:22 +03:00
ide ahci: fix sdb fis semantics 2015-07-04 02:06:05 -04:00
input virtio-input: add input routing support 2015-07-03 12:21:11 +02:00
intc hw/intc/arm_gic_common.c: Reset all registers 2015-07-06 10:13:17 +01:00
ipack pci: Trivial device model conversions to realize 2015-02-26 12:42:16 +01:00
isa ich9: add TCO interface emulation 2015-07-07 13:12:22 +03:00
lm32 hw/lm32/milkymist.c: Fix misusing qemu_allocate_irqs for single irq 2015-06-03 14:21:24 +03:00
m68k m68k: implement more ColdFire 5208 interrupt controller functionality 2015-06-22 14:43:25 +01:00
mem numa,pc-dimm: Store pc-dimm memory information in numa_info 2015-07-03 17:47:58 -03:00
microblaze s3adsp1800: Remove the hardcoded values from the reset 2015-06-21 17:20:16 +10:00
mips target-mips: add Unified Hosting Interface (UHI) support 2015-06-26 09:08:50 +01:00
misc Include qapi/qmp/qerror.h exactly where needed 2015-06-22 18:20:41 +02:00
moxie memory: add parameter errp to memory_region_init_ram 2014-09-09 13:41:43 +02:00
net Include qapi/qmp/qerror.h exactly where needed 2015-06-22 18:20:41 +02:00
nvram fw_cfg: prohibit insertion of duplicate fw_cfg file names 2015-06-10 08:00:37 +02:00
openrisc hw/core/loader: implement address translation in uimage loader 2014-11-03 00:59:10 +03:00
pci Print error when failing to load PCI config data 2015-06-23 19:57:27 +03:00
pci-bridge hw/pci-bridge: format special OFW unit address for PXB host 2015-06-23 22:58:36 +02:00
pci-host piix: piix3 QOMify 2015-06-23 19:57:28 +03:00
pcmcia hmp: Remove "info pcmcia" 2014-10-24 12:19:11 +01:00
ppc timer: Use a single definition of NSEC_PER_SEC for the whole codebase 2015-07-02 09:20:18 +01:00
s390x s390x/migration: Introduce 2.4 machine 2015-07-02 15:35:34 +02:00
scsi qerror: Move #include out of qerror.h 2015-06-22 18:20:40 +02:00
sd hw/sd/pxa2xx_mmci: Stop using old_mmio in MemoryRegionOps 2015-06-15 18:06:09 +01:00
sh4 sh4/r2d: convert to new MMIO accessor style 2015-06-12 12:02:48 +02:00
sparc fw_cfg: fix FW_CFG_BOOT_DEVICE update on ppc and sparc 2015-06-10 08:00:37 +02:00
sparc64 fw_cfg: fix FW_CFG_BOOT_DEVICE update on ppc and sparc 2015-06-10 08:00:37 +02:00
ssi omap: Fix warnings from Sparse 2015-03-19 11:11:55 +03:00
timer arm_mptimer: Respect IT bit state 2015-07-06 10:26:35 +01:00
tpm qerror: Move #include out of qerror.h 2015-06-22 18:20:40 +02:00
tricore target-tricore: check return value before using it 2014-11-02 10:04:34 +03:00
unicore32 hw/unicore32/puv3.c: Fix misusing qemu_allocate_irqs for single irq 2015-06-03 14:21:24 +03:00
usb timer: Use a single definition of NSEC_PER_SEC for the whole codebase 2015-07-02 09:20:18 +01:00
vfio vfio: fix build error on CentOS 5.7 2015-06-18 10:35:59 +01:00
virtio Revert "dataplane: allow virtio-1 devices" 2015-07-07 11:21:37 +03:00
watchdog wdt_i6300esb: QOMify 2015-06-23 19:57:28 +03:00
xen trivial patches for 2015-06-23 2015-06-23 18:25:55 +01:00
xenpv hw: Convert from BlockDriverState to BlockBackend, mostly 2014-10-20 14:02:25 +02:00
xtensa xtensa: Remove superfluous '\n' around error_report() 2015-03-10 08:15:33 +03:00
Makefile.objs vfio: move hw/misc/vfio.c to hw/vfio/pci.c Move vfio.h into include/hw/vfio 2014-12-19 15:24:06 -07:00