I use a ZCU102 board with the ADRV9009 evaluation board. When I check my oscilloscope, I only see one sysref pulse when I turn the board on.
I think I have enable the "TALISE_enableMultichipSync" function from UG-1295 p54:
root@zynqmp:/sys/kernel/debug/iio/iio:device2# cat adi,fhm-mode-enable-mcs-sync0root@zynqmp:/sys/kernel/debug/iio/iio:device2# echo 1 > adi,fhm-mode-enable-mcs-syncroot@zynqmp:/sys/kernel/debug/iio/iio:device2# cat adi,fhm-mode-enable-mcs-sync1root@zynqmp:/sys/kernel/debug/iio/iio:device2# echo 1 > adi,fhm-mode-enable-mcs-syncroot@zynqmp:/sys/kernel/debug/iio/iio:device2# cat adi,fhm-mode-enable-mcs-sync1
But I don't see any SYSREF pulses, on my oscilloscope. This should reset the state machine and I expects the multichip sync sequence to start over like UG-1295 suggested.
Then I tried to add a iio_sysfs_trigger,but also without succes:wiki.analog.com/.../iio-trig-sysfs
root@zynqmp:/sys/bus/iio/devices/iio_sysfs_trigger# echo 0 > add_triggerroot@zynqmp:/sys/bus/iio/devices/trigger0# echo 1 > trigger_nowroot@zynqmp:/sys/bus/iio/devices/iio_sysfs_trigger# echo 1 > add_triggerroot@zynqmp:/sys/bus/iio/devices/trigger1# echo 1 > trigger_now
Is it possible to enable mcs trough the virtual file system? How should I proceed to get the 4 sysref pulses to be carried out? Should I try to modify de registries directly of the AD9528?
The device driver requests SYSREF pulses from the AD9528 via a GPIO.
Writing adi,fhm-mode-enable-mcs-sync or iio_sysfs_trigger stuff is totally unrelated and won't help you any further...
Very interesting question. Did you already have a solution found for this?
No I didn't get an answer so far...
Maybe I have to change my devicethree and let the init function take care of this problem.
Or maybe it is only supported based on next release "Talise Release 6.0" on February 8, 2019. From release notes:
New API to support RF LO Sync (TALISE_enableMultichipRfLOPhaseSync) to be used in initsequeneceinstead of previous MCS function.Slightly different device initsequence. The previous MCS function is still valid if RF LO Sync is not required.
However we do have a branch with a modified driver that allows you to issue a MCS sequence, RF sync and also restart all the JESD links. The function can be found here:
It will be merged into our master branches soon.
This is how it's being done from user space.