xref: /openbmc/qemu/include/hw/timer/bcm2835_systmr.h (revision e6e03dcf)
1 /*
2  * BCM2835 SYS timer emulation
3  *
4  * Copyright (c) 2019 Philippe Mathieu-Daudé <f4bug@amsat.org>
5  *
6  * SPDX-License-Identifier: GPL-2.0-or-later
7  */
8 
9 #ifndef BCM2835_SYSTIMER_H
10 #define BCM2835_SYSTIMER_H
11 
12 #include "hw/sysbus.h"
13 #include "hw/irq.h"
14 
15 #define TYPE_BCM2835_SYSTIMER "bcm2835-sys-timer"
16 #define BCM2835_SYSTIMER(obj) \
17     OBJECT_CHECK(BCM2835SystemTimerState, (obj), TYPE_BCM2835_SYSTIMER)
18 
19 typedef struct {
20     /*< private >*/
21     SysBusDevice parent_obj;
22 
23     /*< public >*/
24     MemoryRegion iomem;
25     qemu_irq irq;
26 
27     struct {
28         uint32_t status;
29         uint32_t compare[4];
30     } reg;
31 } BCM2835SystemTimerState;
32 
33 #endif
34