I'm trying to compile the device driver for the AD9316 with Linux 4.1. I'm required to use this kernel due to the CPU we are using. I have downloaded 3 branches from github.com/analogdevicesinc/Linux. The branches are: xcomm_zynq, xcomm_zynq_4_0, and xcomm_zynq_4_4. These all seem to be a mix of different version of Linux, mostly 4.5 and above. My statement about being mixed is based on http://lxr.free-electrons.com/source/drivers/iio and then using the pull down menu to select different version. The only released version of analogdevicesinct/Linux is from 2013 and does not have the 9361. Any ideas or suggestions will be appreciated.
I'm sorry, we only have 4.0 and 4.4, nothing in between. You can either try to take the driver from 4.0 and try to forward port it to 4.1 or take the driver from 4.4 and backport it to 4.1. Be aware that there are quite a few changes to the IIO framework and other parts of the kernel that the ad9361 driver depends on which also need to be ported.
Thanks for the info. I will do the porting from the 4.0 version. That seems to be the closest. I have found that the branch labeled 4.0 contains some 3.18 code. Not sure if you care or if you know someone who cares. In the file,
drivers/iio/frequency/cf_axi_dds_buffer.c on line 72 the function dma_device_control() was removed in version 3.18. So, as long as the complete source tree is used no one will notice.