xref: /qemu/include/hw/intc/loongarch_extioi.h (revision 272c467a48815e77db89b69dcd251b9f5b22203e)
1cbff2db1SXiaojuan Yang /* SPDX-License-Identifier: GPL-2.0-or-later */
2cbff2db1SXiaojuan Yang /*
3cbff2db1SXiaojuan Yang  * LoongArch 3A5000 ext interrupt controller definitions
4cbff2db1SXiaojuan Yang  *
5cbff2db1SXiaojuan Yang  * Copyright (C) 2021 Loongson Technology Corporation Limited
6cbff2db1SXiaojuan Yang  */
7cbff2db1SXiaojuan Yang 
8cbff2db1SXiaojuan Yang #ifndef LOONGARCH_EXTIOI_H
9cbff2db1SXiaojuan Yang #define LOONGARCH_EXTIOI_H
10cbff2db1SXiaojuan Yang 
11fea46db1SBibo Mao #include "hw/intc/loongarch_extioi_common.h"
12dc6f37ebSSong Gao 
13cbff2db1SXiaojuan Yang #define TYPE_LOONGARCH_EXTIOI "loongarch.extioi"
14*272c467aSBibo Mao OBJECT_DECLARE_TYPE(LoongArchExtIOIState, LoongArchExtIOIClass, LOONGARCH_EXTIOI)
15*272c467aSBibo Mao 
16*272c467aSBibo Mao struct LoongArchExtIOIState {
17*272c467aSBibo Mao     LoongArchExtIOICommonState parent_obj;
18*272c467aSBibo Mao };
19*272c467aSBibo Mao 
20*272c467aSBibo Mao struct LoongArchExtIOIClass {
21*272c467aSBibo Mao     LoongArchExtIOICommonClass parent_class;
22*272c467aSBibo Mao 
23*272c467aSBibo Mao     DeviceRealize parent_realize;
24*272c467aSBibo Mao     DeviceUnrealize parent_unrealize;
25*272c467aSBibo Mao };
26*272c467aSBibo Mao 
27*272c467aSBibo Mao #define LoongArchExtIOI         LoongArchExtIOICommonState
28*272c467aSBibo Mao #define LOONGARCH_EXTIOI(obj)   ((LoongArchExtIOICommonState *)obj)
29cbff2db1SXiaojuan Yang #endif /* LOONGARCH_EXTIOI_H */
30