5 #include "hw/scsi/esp.h"
6 #include "hw/net/lance.h"
7 #include "qom/object.h"
11 #define TYPE_SPARC32_DMA_DEVICE "sparc32-dma-device"
12 typedef struct DMADeviceState DMADeviceState
;
13 DECLARE_INSTANCE_CHECKER(DMADeviceState
, SPARC32_DMA_DEVICE
,
14 TYPE_SPARC32_DMA_DEVICE
)
17 struct DMADeviceState
{
18 SysBusDevice parent_obj
;
21 uint32_t dmaregs
[DMA_REGS
];
27 #define TYPE_SPARC32_ESPDMA_DEVICE "sparc32-espdma"
28 typedef struct ESPDMADeviceState ESPDMADeviceState
;
29 DECLARE_INSTANCE_CHECKER(ESPDMADeviceState
, SPARC32_ESPDMA_DEVICE
,
30 TYPE_SPARC32_ESPDMA_DEVICE
)
32 struct ESPDMADeviceState
{
33 DMADeviceState parent_obj
;
38 #define TYPE_SPARC32_LEDMA_DEVICE "sparc32-ledma"
39 typedef struct LEDMADeviceState LEDMADeviceState
;
40 DECLARE_INSTANCE_CHECKER(LEDMADeviceState
, SPARC32_LEDMA_DEVICE
,
41 TYPE_SPARC32_LEDMA_DEVICE
)
43 struct LEDMADeviceState
{
44 DMADeviceState parent_obj
;
46 SysBusPCNetState
*lance
;
49 #define TYPE_SPARC32_DMA "sparc32-dma"
50 typedef struct SPARC32DMAState SPARC32DMAState
;
51 DECLARE_INSTANCE_CHECKER(SPARC32DMAState
, SPARC32_DMA
,
54 struct SPARC32DMAState
{
55 SysBusDevice parent_obj
;
58 MemoryRegion ledma_alias
;
59 ESPDMADeviceState
*espdma
;
60 LEDMADeviceState
*ledma
;
64 void ledma_memory_read(void *opaque
, hwaddr addr
,
65 uint8_t *buf
, int len
, int do_bswap
);
66 void ledma_memory_write(void *opaque
, hwaddr addr
,
67 uint8_t *buf
, int len
, int do_bswap
);
68 void espdma_memory_read(void *opaque
, uint8_t *buf
, int len
);
69 void espdma_memory_write(void *opaque
, uint8_t *buf
, int len
);