I'm trying to use a FIR filter on a Zynq project, but am having some issues. I currently set the filter on Linux boot. My application does the following on start:
- unbind CF_AXI_ADC
- unbind DMA-AXI-DMAC
- flash a bitstream to /dev/xdevcfg
- bind DMA-AXI-DMAC
- bind CF_AXI_ADC
- do useful work
The problem I'm seeing is that after running the application a few times, data stop coming in over the DMA. This doesn't happen when there isn't a filter.
I've modified the ad9361-iiostream.c application to demonstrate my problem. See the main where I do the process above (as well as load the filter in the application). If I run it a few times (Ctrl-Cing to quit) data eventually stops coming in. I did change the sample rate and bandwidth filter as well to higher values.