On 13/06/2018 15:06, Mark Cave-Ayland wrote:
>>
>> Heh, those are disgusting indeed. :) So I guess it would have to stay,
>> only MIPS can use the pure MemoryRegion-based approach.
>
> The only option I can think of is inserting an AddressSpace between the
> esp/ledma device and the IOMMU Address
On 13/06/18 12:19, Paolo Bonzini wrote:
On 13/06/2018 12:36, Mark Cave-Ayland wrote:
Check out hw/dma/sparc32_dma.c for some ugly examples:
espdma_memory_read()/espdma_memory_write() update the DMA address
pointer register after each read/write, and
ledma_memory_read()/ledma_memory_write() need
On 13/06/2018 12:36, Mark Cave-Ayland wrote:
> Check out hw/dma/sparc32_dma.c for some ugly examples:
> espdma_memory_read()/espdma_memory_write() update the DMA address
> pointer register after each read/write, and
> ledma_memory_read()/ledma_memory_write() need to determine if the pcnet
> card ha
On 13/06/18 11:06, Paolo Bonzini wrote:
On 13/06/2018 11:47, Mark Cave-Ayland wrote:
+dev = qdev_create(NULL, TYPE_ESP);
+sysbus_esp = ESP_STATE(dev);
+esp = &sysbus_esp->esp;
+esp->dma_memory_read = rc4030_dma_read;
+esp->dma_memory_write = rc4030_dma_write;
+esp->dma_o
On 13/06/2018 11:47, Mark Cave-Ayland wrote:
> +dev = qdev_create(NULL, TYPE_ESP);
> +sysbus_esp = ESP_STATE(dev);
> +esp = &sysbus_esp->esp;
> +esp->dma_memory_read = rc4030_dma_read;
> +esp->dma_memory_write = rc4030_dma_write;
> +esp->dma_opaque = dmas[0];
Poking at the
MIPS jazz is the last user of the legacy esp_init() function so move creation
of the ESP device over to use qdev.
Note that the esp_reset and dma_enable qemu_irqs are currently unused and so
we do not wire these up and instead remove the variables to prevent the
compiler emitting unused variable w