Both sides previous revisionPrevious revisionNext revision | Previous revision |
resources:tools-software:linux-drivers:iio-adc:ad6676 [11 Feb 2016 21:07] – [Status] Lars-Peter Clausen | resources:tools-software:linux-drivers:iio-adc:ad6676 [19 Jan 2021 08:28] (current) – [Driver testing / API] Michael Hennerich |
---|
| |
^ Source ^ Mainlined? ^ | ^ Source ^ Mainlined? ^ |
| [[linux.github>xcomm_zynq?drivers/iio/adc/ad6676.c|git]] | [[linux.github>xcomm_zynq?drivers/iio/adc/ad6676.c|No]] | | | [[linux.github>master?drivers/iio/adc/ad6676.c|git]] | [[linux.github>master?drivers/iio/adc/ad6676.c|No]] | |
| |
===== Files ===== | ===== Files ===== |
| |
^ Function ^ File ^ | ^ Function ^ File ^ |
| driver | [[linux.github>xcomm_zynq?drivers/iio/adc/ad6676.c | drivers/iio/adc/ad6676.c]] | | | driver | [[linux.github>master?drivers/iio/adc/ad6676.c | drivers/iio/adc/ad6676.c]] | |
| include | [[linux.github>xcomm_zynq?drivers/iio/adc/ad6676.h | drivers/iio/adc/ad6676.h]] | | | include | [[linux.github>master?drivers/iio/adc/ad6676.h | drivers/iio/adc/ad6676.h]] | |
| |
==== Related Device Drivers ==== | ==== Related Device Drivers ==== |
| |
^ Function ^ File ^ | ^ Function ^ File ^ |
| driver | [[linux.github>xcomm_zynq?drivers/iio/adc/cf_axi_adc_core.c | drivers/iio/adc/cf_axi_adc_core.c]] | | | driver | [[linux.github>master?drivers/iio/adc/cf_axi_adc_core.c | drivers/iio/adc/cf_axi_adc_core.c]] | |
| driver | [[linux.github>xcomm_zynq?drivers/iio/adc/cf_axi_adc_ring_stream.c | drivers/iio/adc/cf_axi_adc_ring_stream.c]] | | | driver | [[linux.github>master?drivers/iio/adc/cf_axi_adc_ring_stream.c | drivers/iio/adc/cf_axi_adc_ring_stream.c]] | |
| include | [[linux.github>xcomm_zynq?drivers/iio/adc/cf_axi_adc.h | drivers/iio/adc/cf_axi_adc.h]] | | | include | [[linux.github>master?drivers/iio/adc/cf_axi_adc.h | drivers/iio/adc/cf_axi_adc.h]] | |
| |
| |
| |
^ Function ^ File ^ | ^ Function ^ File ^ |
| FMCOMMS2/3 Device Tree | [[linux.github>xcomm_zynq?arch/arm/boot/dts/zynq-zc706-adv7511-ad6676-fmc.dts | | AD6676-EBZ Device Tree | [[linux.github>master?arch/arm/boot/dts/zynq-zc706-adv7511-ad6676-fmc.dts |
| zynq-zc706-adv7511-ad6676-fmc.dts]] | | | zynq-zc706-adv7511-ad6676-fmc.dts]] | |
| |
| adi,bandwidth-margin-high-mhz | Initial bandwidth margin high in Hz | | | adi,bandwidth-margin-high-mhz | Initial bandwidth margin high in Hz | |
| adi,bandwidth-margin-if-mhz | Initial bandwidth margin IF in Hz | | | adi,bandwidth-margin-if-mhz | Initial bandwidth margin IF in Hz | |
| adi,external-inductance-l-nh | The inductance of the external inductors in nH| | | adi,external-inductance-l-nh | The inductance of the external inductors in nH | |
| adi,idac1-fullscale-adjust | Initial IDAC_FS [64..16] | | | adi,idac1-fullscale-adjust | Initial IDAC_FS [64..16] | |
| adi,shuffler-control | Initial shuffler control setting | | | adi,shuffler-control | Initial shuffler control setting | |
| adi,shuffler-thresh | Initial shuffler threshold| | | adi,shuffler-thresh | Initial shuffler threshold| |
| adi,jesd-scrambling-enable | Enables JESD scrambling | | | adi,jesd-scrambling-enable | Enables JESD204B link scrambling | |
| adi,jesd-use-lvds-syncb-enable | Use LVDS SYNCB | | | adi,jesd-use-lvds-syncb-enable | Use LVDS SYNCB | |
| adi,jesd-powerdown-sysref-enable | Powerdown SYSREF | | | adi,jesd-powerdown-sysref-enable | Powerdown SYSREF | |
| adi,jesd-l-lanes | Number of JESD lanes| | | adi,jesd-l-lanes | Number of JESD204B lanes | |
| adi,jesd-f-frames-per-multiframe | Number of frames per multiframe | | | adi,jesd-f-frames-per-multiframe | Number of frames per multiframe | |
| adi,spi-3wire-enable | Enables SPI 3-WIRE mode | | | adi,spi-3wire-enable | Enables SPI 3-WIRE mode | |
An example program which uses the interface can be found here: | An example program which uses the interface can be found here: |
* [[resources:tools-software:linux-software:iio_oscilloscope|IIO Oscilloscope]] | * [[resources:tools-software:linux-software:iio_oscilloscope|IIO Oscilloscope]] |
* [[resources:tools-software:linux-software:ad6676ebz_plugin|AD6676-EBZ GUI Plugin Description]] | |
| |
{{ :resources:tools-software:linux-drivers:iio-adc:ad6676-osc-screenshot.png?600 |}} | {{ :resources:tools-software:linux-drivers:iio-adc:ad6676-osc-screenshot.png?600 |}} |
<WRAP top tip round box 60%>**TIP:** | <WRAP top tip round box 60%>**TIP:** |
If writing this attribute returns "Invalid argument" (-EINVAL) this means that the underlying | If writing this attribute returns "Invalid argument" (-EINVAL) this means that the underlying |
HDL or Hardware's JESD Core and Gigabit Transceiver (GT) doesn't support changing the JESD Lane Rate. | HDL or Hardware's JESD204B Core and Gigabit Transceiver (GT) doesn't support changing the JESD204B Lane Rate. |
| |
</WRAP>\\ | </WRAP>\\ |
The complex (I/Q) data rate at the JESD204B outputs is FADC / DF. | The complex (I/Q) data rate at the JESD204B outputs is FADC / DF. |
| |
In case the underlying HDL or Hardware's JESD Core and Gigabit Transceiver (GT) support arbitrary JESD Lane Rates. | In case the underlying HDL or Hardware's JESD204B Core and Gigabit Transceiver (GT) support arbitrary JESD204B Lane Rates. |
This attribute can be writable. And it will select the appropriate AD6676 supported DFs. | This attribute can be writable. And it will select the appropriate AD6676 supported DFs. |
| |
</xterm></WRAP> | </xterm></WRAP> |
| |
===== JESD Interface Testing ===== | ===== JESD204B Interface Testing ===== |
| |
Below Eyes were captured on a Xilinx ZC706 after > 4 hours of operation: | Below Eyes were captured on a Xilinx ZC706 after > 4 hours of operation: |
| |
[[resources:tools-software:linux-software:jesd_eye_scan|JESD204 Eye Scan]] | [[resources:tools-software:linux-software:jesd_eye_scan|JESD204B Eye Scan]] |
| |
{{:resources:tools-software:linux-drivers:iio-adc:ad6676_lane0_9.54e-08bert.png?300 | LANE0}} | {{:resources:tools-software:linux-drivers:iio-adc:ad6676_lane0_9.54e-08bert.png?300 | LANE0}} |