Dear Support Team,
We have several custom boards with Zynq and AD9364. The layout of the digital board is largely based on the Zedboard.
The HDL and all the drivers for AD9364 work fine for all the boards apart from one (again all the boards are identical in the design). On that board the cf-ad9361-lpc driver does not exist in the Linux kernel (e.g. cat /sys/bus/iio/devices/iio\:device*/name doesnt show the above driver). Please see below the output form dmesg on Linux. The devicetree checked and it is the same as with the boards that it works with so nothing wrong with the devicetree, HDL or Linux.
I suspected the hardware problem so i searched the forum and found this: cf_axi_adc failing to probe on 0x80000000 failed with error -5 and the possibility of some noises on traces, clocks, ets. Please note thought that although it says that the TX tuning failed the TX path seems to be working fine. I know that I can bypass the calibration in order to avoid this but I really wouldnt like to do that. I am also aware of Digital Interface Timing Verification [Analog Devices Wiki] and i went through this document.
Is there anything else i can do for some further debugging/testing or any other solution you would recommend?
We desperately need to get this board working so any advice on what to do will be highly appreciated.
One constraint, I dont have physical access to the board (since it is in production) but have a full remote access for debugging and testing.
Many thanks,
Milos
===dmesg relevant output
platform 79020000.cf-ad9361-lpc: Driver cf_axi_adc requests probe deferral
ad9361 spi1.0: ad9361_probe : enter
ad9361 spi1.0: ad9361_probe : AD9361 Rev 2 successfully initialized
cf_axi_dds 79024000.cf-ad9361-dds-core-lpc: Analog Devices CF_AXI_DDS_DDS MASTER (8.00.b) at 0x79024000 mapped to 0xf00c2000, probed DDS AD9364
TCP: cubic registered
NET: Registered protocol family 17
can: controller area network core (rev 20120528 abi 9)
NET: Registered protocol family 29
can: raw protocol (rev 20120528)
can: broadcast manager protocol (rev 20120528 t)
can: netlink gateway (rev 20130117) max_hops=1
zynq_pm_ioremap: no compatible node found for 'xlnx,zynq-ddrc-a05'
zynq_pm_late_init: Unable to map DDRC IO memory.
Registering SWP/SWPB emulation handler
mmc0: new high speed SDHC card at address 0001
mmcblk0: mmc0:0001 016GB 15.2 GiB
mmcblk0: p1 p2 p3 p4 < p5 p6 >
SAMPL CLK: 61440000 tuning: RX
0:1:2:3:4:5:6:7:8:9:a:b:c:d:e:f:
0:# # # # # # # # # # # # # # # #
1:# # # # # # # # # # # # # # # #
ad9361 spi1.0: ad9361_dig_tune: Tuning RX FAILED!
SAMPL CLK: 61440000 tuning: TX
0:1:2:3:4:5:6:7:8:9:a:b:c:d:e:f:
0:# # # # # # # # # # # # # # # #
1:# # # # # # # # # # # # # # # #
ad9361 spi1.0: ad9361_dig_tune: Tuning TX FAILED!
cf_axi_adc: probe of 79020000.cf-ad9361-lpc failed with error -5