hw/arm/xlnx-zynqmp: Remove obsolete 'has_rpu' property
[qemu/ar7.git] / include / hw / sparc / sparc32_dma.h
blobcde8ec02cb6543afa131788588ee5258412bd8a6
1 #ifndef SPARC32_DMA_H
2 #define SPARC32_DMA_H
4 #include "hw/sysbus.h"
5 #include "hw/scsi/esp.h"
6 #include "hw/net/lance.h"
7 #include "qom/object.h"
9 #define DMA_REGS 4
11 #define TYPE_SPARC32_DMA_DEVICE "sparc32-dma-device"
12 OBJECT_DECLARE_SIMPLE_TYPE(DMADeviceState, SPARC32_DMA_DEVICE)
15 struct DMADeviceState {
16 SysBusDevice parent_obj;
18 MemoryRegion iomem;
19 uint32_t dmaregs[DMA_REGS];
20 qemu_irq irq;
21 void *iommu;
22 qemu_irq gpio[2];
25 #define TYPE_SPARC32_ESPDMA_DEVICE "sparc32-espdma"
26 OBJECT_DECLARE_SIMPLE_TYPE(ESPDMADeviceState, SPARC32_ESPDMA_DEVICE)
28 struct ESPDMADeviceState {
29 DMADeviceState parent_obj;
31 SysBusESPState esp;
34 #define TYPE_SPARC32_LEDMA_DEVICE "sparc32-ledma"
35 OBJECT_DECLARE_SIMPLE_TYPE(LEDMADeviceState, SPARC32_LEDMA_DEVICE)
37 struct LEDMADeviceState {
38 DMADeviceState parent_obj;
40 SysBusPCNetState lance;
43 #define TYPE_SPARC32_DMA "sparc32-dma"
44 OBJECT_DECLARE_SIMPLE_TYPE(SPARC32DMAState, SPARC32_DMA)
46 struct SPARC32DMAState {
47 SysBusDevice parent_obj;
49 MemoryRegion dmamem;
50 MemoryRegion ledma_alias;
51 ESPDMADeviceState espdma;
52 LEDMADeviceState ledma;
55 /* sparc32_dma.c */
56 void ledma_memory_read(void *opaque, hwaddr addr,
57 uint8_t *buf, int len, int do_bswap);
58 void ledma_memory_write(void *opaque, hwaddr addr,
59 uint8_t *buf, int len, int do_bswap);
60 void espdma_memory_read(void *opaque, uint8_t *buf, int len);
61 void espdma_memory_write(void *opaque, uint8_t *buf, int len);
63 #endif