The CF_AXI_ADC drivers are available in linux/drivers/iio/adc at xcomm_zynq · analogdevicesinc/linux · GitHub
I attempted to port them to a real-time (patched) xilinx linux kernel that is version 3.14. They compile into the kernel with no errors, but I can't get the drivers to load: the devices do not show up in /proc/device-tree. They do not compile as modules. I don't know why that would be.
The devices DO show up when I build the analog devices 3.15 kernel. I must be missing something, or these drivers are not compatible with the older kernel.
My strategy was as follows, what am I missing?
From analog devices linux 3.15 copy
* all the files
add to drivers/iio/adc/Kconfig
tristate "Analog Devices AD9467 AD9643 High-Speed AXI ADC driver"
Say yes here to build support for Analog Devices AD9467 and AD9643,
High-Speed LVDS analog to digital converters (ADC).
FPGA interface HDL is available here:
If unsure, say N (but it's safe to say "Y").
To compile this driver as a module, choose M here: the
module will be called cf_axi_adc.
add this to the top of drivers/iio/adc/makefile
obj-$(CONFIG_CF_AXI_ADC) += cf_axi_adc.o ad9467.o ad9361.o admc_adc.o admc_speed.o admc_ctrl.o ad_adc.o
obj-$(CONFIG_CF_AXI_FFT) += cf_axi_fft_core.o
cf_axi_adc-y := cf_axi_adc_core.o cf_axi_adc_ring.o cf_axi_adc_ring_stream.o
Add to drivers/iio/Makefile
industrialio-y := industrialio-core.o industrialio-event.o inkern.o industrialio-dmabuf.o industrialio-dmaengine.o