2 * QEMU ICH9 TCO emulation
4 * Copyright (c) 2015 Paulo Alcantara <pcacjr@zytor.com>
6 * This work is licensed under the terms of the GNU GPL, version 2 or later.
7 * See the COPYING file in the top-level directory.
12 #include "qemu-common.h"
14 /* As per ICH9 spec, the internal timer has an error of ~0.6s on every tick */
15 #define TCO_TICK_NSEC 600000000LL
17 /* TCO I/O register offsets */
33 /* TCO I/O register control/status bits */
38 TCO_TMR_HLT
= 1 << 11,
40 TCO_SECOND_TO_STS
= 1 << 1,
41 TCO_BOOT_STS
= 1 << 2,
44 /* TCO I/O registers mask bits */
47 TCO1_STS_MASK
= 0xe870,
48 TCO2_STS_MASK
= 0xfff8,
49 TCO1_CNT_MASK
= 0xfeff,
53 typedef struct TCOIORegs
{
77 void acpi_pm_tco_init(TCOIORegs
*tr
, MemoryRegion
*parent
);
79 extern const VMStateDescription vmstate_tco_io_sts
;
81 #endif /* HW_ACPI_TCO_H */