pcihp: compose PCNT callchain right before its user _GPE._E01
[qemu.git] / include / hw / misc / aspeed_xdma.h
blobb1478fd1c681df6e5283570dd88170b51486539f
1 /*
2 * ASPEED XDMA Controller
3 * Eddie James <eajames@linux.ibm.com>
5 * Copyright (C) 2019 IBM Corp.
6 * SPDX-License-Identifier: GPL-2.0-or-later
7 */
9 #ifndef ASPEED_XDMA_H
10 #define ASPEED_XDMA_H
12 #include "hw/sysbus.h"
13 #include "qom/object.h"
15 #define TYPE_ASPEED_XDMA "aspeed.xdma"
16 #define TYPE_ASPEED_2400_XDMA TYPE_ASPEED_XDMA "-ast2400"
17 #define TYPE_ASPEED_2500_XDMA TYPE_ASPEED_XDMA "-ast2500"
18 #define TYPE_ASPEED_2600_XDMA TYPE_ASPEED_XDMA "-ast2600"
19 OBJECT_DECLARE_TYPE(AspeedXDMAState, AspeedXDMAClass, ASPEED_XDMA)
21 #define ASPEED_XDMA_NUM_REGS (ASPEED_XDMA_REG_SIZE / sizeof(uint32_t))
22 #define ASPEED_XDMA_REG_SIZE 0x7C
24 struct AspeedXDMAState {
25 SysBusDevice parent;
27 MemoryRegion iomem;
28 qemu_irq irq;
30 char bmc_cmdq_readp_set;
31 uint32_t regs[ASPEED_XDMA_NUM_REGS];
34 struct AspeedXDMAClass {
35 SysBusDeviceClass parent_class;
37 uint8_t cmdq_endp;
38 uint8_t cmdq_wrp;
39 uint8_t cmdq_rdp;
40 uint8_t intr_ctrl;
41 uint32_t intr_ctrl_mask;
42 uint8_t intr_status;
43 uint32_t intr_complete;
46 #endif /* ASPEED_XDMA_H */