xref: /qemu/include/hw/misc/iosb.h (revision f7294103560260ff09ffdf316cf6ba6d4e368d85)
1*bdc2c77dSMark Cave-Ayland /*
2*bdc2c77dSMark Cave-Ayland  * QEMU IOSB emulation
3*bdc2c77dSMark Cave-Ayland  *
4*bdc2c77dSMark Cave-Ayland  * Copyright (c) 2019 Laurent Vivier
5*bdc2c77dSMark Cave-Ayland  * Copyright (c) 2022 Mark Cave-Ayland
6*bdc2c77dSMark Cave-Ayland  *
7*bdc2c77dSMark Cave-Ayland  * SPDX-License-Identifier: GPL-2.0-or-later
8*bdc2c77dSMark Cave-Ayland  */
9*bdc2c77dSMark Cave-Ayland 
10*bdc2c77dSMark Cave-Ayland #ifndef HW_MEM_IOSB_H
11*bdc2c77dSMark Cave-Ayland #define HW_MEM_IOSB_H
12*bdc2c77dSMark Cave-Ayland 
13*bdc2c77dSMark Cave-Ayland #define IOSB_REGS 7
14*bdc2c77dSMark Cave-Ayland 
15*bdc2c77dSMark Cave-Ayland struct IOSBState {
16*bdc2c77dSMark Cave-Ayland     SysBusDevice parent_obj;
17*bdc2c77dSMark Cave-Ayland 
18*bdc2c77dSMark Cave-Ayland     MemoryRegion mem_regs;
19*bdc2c77dSMark Cave-Ayland     uint32_t regs[IOSB_REGS];
20*bdc2c77dSMark Cave-Ayland };
21*bdc2c77dSMark Cave-Ayland 
22*bdc2c77dSMark Cave-Ayland #define TYPE_IOSB "IOSB"
23*bdc2c77dSMark Cave-Ayland OBJECT_DECLARE_SIMPLE_TYPE(IOSBState, IOSB);
24*bdc2c77dSMark Cave-Ayland 
25*bdc2c77dSMark Cave-Ayland #endif
26