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