> Im looking to QOMifying and refactoring the AXI stream interfaces > between the AXI ethernet and AXI DMA modules. I could use some > guidance on how to do this as I can think of about 6 different > solutions. Sources are hw/xilinx_axienet.c and hw/xilinx_axidma.c. > >... > > So what im proposing is AXI stream is implemented as a unidirectional > point to point bus. The xilinx ethernet system would consist of two of > these buses one for tx, one for rx.
I thought the idea was that with QOM the bus/device model would go away. The DMA controller implements an AXIDMA interface, and the device has a AXIDMA link that's connected to that interface. Of course we then hit the usual problem with QOM that we can only link to objects, and it's impossible to expose multiple interfaces of the same type. The DMA controller probably needs a proxy object for each DMA channel. Paul