dma: eliminate DMAContext
The DMAContext is a simple pointer to an AddressSpace that is now alwaysalready available. Make everyone hold the address space directly,and clean up the DMA API to use the AddressSpace directly.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>...
Merge branch 'realize-isa.v2' of git://github.com/afaerber/qemu-cpu
xilinx_axidma: Do not set DMA .notify to NULL after notify
If a stream notify function is not ready, it may re-populate the notify call-back to indicate it should be re-polled later. This break in this usage, asimmediately following the notify() call, .notify is set to NULL. reverse the...
isa: Use realizefn for ISADevice
Drop ISADeviceClass::init and the resulting no-op initfn and letchildren implement their own realizefn. Adapt error handling.Split off an instance_init where sensible.
Signed-off-by: Andreas Färber <afaerber@suse.de>
Rename hexdump to avoid FreeBSD libutil conflict
On FreeBSD libutil is used for openpty(), but it also provides a hexdump()which conflicts with QEMU's.
Signed-off-by: Ed Maste <emaste@freebsd.org>Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>Message-id: 1368718348-15199-1-git-send-email-emaste@freebsd.org...
i82374: QOM'ify
Introduce type constant and cast macro to obsolete DO_UPCAST().
Prepares for ISA realizefn.
Signed-off-by: Andreas Färber <afaerber@suse.de>Signed-off-by: Andreas Färber <afaerber@suse.de>Message-id: 1367093935-29091-5-git-send-email-afaerber@suse.de...
qdev: Drop taddr properties
Drop all the infrastructure for taddr properties (ie ones whichare 'hwaddr' sized). These are now unused, and any further desireduse would be rather questionable since device properties shouldn'tgenerally depend on a type that is conceptually variable based on...
Remove unneeded type casts
cpu_physical_memory_read, cpu_physical_memory_write take any pointeras 2nd argument without needing a type cast.
Signed-off-by: Stefan Weil <sw@weilnetz.de>Reviewed-by: Andreas Färber <afaerber@suse.de>Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
xilinx_axidma: Fix rx/tx halted bit.
If there is no DMA buffer descriptor, the DMA halts, not idles.
Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>Acked-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
stream: Add flow control API
Add basic flow control to stream. A stream slave may return short, indicatingthat it is not capable of accepting any more data at the present time. Pollingor a callback can be used via the can_push() function to determine when the...
xilinx_axienet/dma: Implement rx path flow control
Implement flow control for the RX data path from xilinx_axienet->xilinx_axidma.On short return from axidma, then ethernet sets up the notify callback to resumetransfer from where it left off.
This also allows the ethernet to track whether there is an in progress transaction...
stream: Remove app argument hack
The uint32_t *app argument doesn't exist in real hardware. It was a hack inxilinx_axidma/enet to fake the (secondary) control stream connection. Removedthe argument and added the second stream to axienet/dma.
Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>...
xilinx_axidma: typedef XilinxAXIDMA struct
Typedef xilinx_axidma's object state struct to shorten the repeated usages ofstruct XilinxAXIDMA.
Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>Acked-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>...
xilinx_axidma: Defined and use type cast macro
Standard QOM cast macro. Replaces usages of FROM_SYSBUS
xilinx_axidma: Register reset properly
Register the reset function as the Device::reset function rather thanexplicitly call it from the sysbus::init.
xilinx_axidma: converted init->realize
The prescribed transition from SysBusDevice::init to Device::realize. I'm goingwith Andreas suggestion to move the sysbus foo to Object::init for early IRQvisibility.
xilinx_axidma: Create Proxy object for stream
Create a separate child object to proxy the stream slave connection. This issetup for future work where a second stream slave connection is needed. Thenew child object is created at qdev init time and is linked back to the parent...
hw: move DMA controllers to hw/dma/, configure with default-configs/
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
hw: move target-independent files to subdirectories
This patch tackles all files that are compiled once, movingthem to subdirectories of hw/.
hw: make subdirectories for devices
Prepare the new directory structure.