I am using ZCU102 +ADRV9009 for transmitting data. However after initializing ADRV9009, I cannot read data back by using DMA. I modified a little bit where I use AXI-SPI IP for connecting between ARM-Cortex A53 and ADRV9009. I include my added code and results in the following. As far as I know, result read back from RX should be equal to sending data on TX which is 0x2666. But it is not identical.
What do you mean by transmit and receive data should be equal to 0x266? Without any modification, if you transmit and receive are you seeing any issue?
Moving to FPGA subspace for comments.
According to my understanding, example of DMA in headless.c is trying to write a sine_lut_iq data from DDR of ZCU102 to ADRV9009 via TX and read data back by using RX. Data 0x2666 is the first data segment of sine_lut_iq before transmitting to ADRV9009. However, read back data from RX is not same as the transmitted data.
This is not the expectation. You are transmitting out into the analog domain and then re-digitizing the data. You should not expect the data to be exactly the same or even aligned in time to what is transmitted.
Thanks for your answer! Is there any method for me to check whether configuration of JESD204B works or not?
Initialization will fail if JESD does not come up correctly.