1/* 2 * ASPEED XDMA Controller 3 * Eddie James <eajames@linux.ibm.com> 4 * 5 * Copyright (C) 2019 IBM Corp. 6 * SPDX-License-Identifer: GPL-2.0-or-later 7 */ 8 9#ifndef ASPEED_XDMA_H 10#define ASPEED_XDMA_H 11 12#include "hw/sysbus.h" 13 14#define TYPE_ASPEED_XDMA "aspeed.xdma" 15#define ASPEED_XDMA(obj) OBJECT_CHECK(AspeedXDMAState, (obj), TYPE_ASPEED_XDMA) 16 17#define ASPEED_XDMA_NUM_REGS (ASPEED_XDMA_REG_SIZE / sizeof(uint32_t)) 18#define ASPEED_XDMA_REG_SIZE 0x7C 19 20typedef struct AspeedXDMAState { 21 SysBusDevice parent; 22 23 MemoryRegion iomem; 24 qemu_irq irq; 25 26 char bmc_cmdq_readp_set; 27 uint32_t regs[ASPEED_XDMA_NUM_REGS]; 28} AspeedXDMAState; 29 30#endif /* ASPEED_XDMA_H */ 31