PYNQ: PYTHON PRODUCTIVITY

PYNQ VDMA fails

I’m building a VDMA pipeline as shown on the image below on PYNQ 2.5. It fails.

Any idea what is wrong with the VDMA driver?

Failure occurs when
cam_vdma = ol.axi_vdma_0

is loaded even though the overlay is loaded successfully.

The error on the notebook is related to uoi:
ValueError " Could not find UOI device for interrupt pin for IRQ number 0

but the driver shows under ls/dev/uio0- uio3.

The configuration for the VDMA is shown below:


Looks like an interrupt parsing problem - can you try add a concat block between the AXI intc and the PS block?

I did try and I’m getting the same message.
This is just a TPG to VDMA on an ZYNQ UL+ , so I’m wondering why it does not work.
Can the driver work without the interrupt?

I did some further troubleshooting. On Ultra96 the design initializes correctly the VDMA. On another board I ported PYNQ (Ultrazed) the VDMA fails with exactly the same pipeline. TPG->pixelPack-VDMA.

When querying with overlay? the output is pretty much identical.

Is there any specific setting on the PYNQ kernel that configures the interrupts? U96 has 5 instances under /dev : uio0-4 whereas Ultrazed has uio0-uio3.

Error occurs at this line immediately after overlay successfully loads:
cam_vdma = overlay.axi_vdma_0

Why would the TPG pipeline work under one UZ+ and fail on the other board?

TPGdesign.tcl (56.8 KB)

The only hint I see right now is the warning from the Vivado design:

WARNING: [BD 41-1731] Type mismatch between connected pins: /axi_intc_0/irq(undef) and /zynq_ultra_ps_e_0/pl_ps_irq0(intr)

The same warning occurs on U96 though.