We have the ADRV9009+ZCU102 example design working fine. We made some changes to it and now we're getting AD9528 failed with error -5.
We probed the AD9528 CSN, SCLK, DIN and we are getting exactly the same waveforms.
In our modified design, the DOUT from AD9528 is always zero. Due to this, iio_driver fails with an error.
The other difference between the two designs is that in the working example design, the SPI activity is observed at time of 4 (after kernel starts), whereas in our modified design, the SPI activity happens immediately after the kernel starts. Probably at this time, AD9528 is not ready? Why is there this difference when only the bitstream is different (not the kernel image)?
How do we solve our problem? Can we somehow delay the iio_driver? Can we manually restart the iio_driver after the system boots completely?
Can you please describe the exact changes made ? The description above is too abstract to debug.
The changes we made are -
I could share the block design tcl file if that would help.
Can you check the ad9528_reset_b pin to see if it's high ?
Yup, that was the problem.
Fixed now, everything is working.