Re: [PATCH 3/5] drivers/misc: rf/ad9361: AD9361 device driver forRadio phy

From: Lars-Peter Clausen
Date: Wed Jun 19 2013 - 08:57:37 EST

On 06/17/2013 10:09 AM, akhil.goyal@xxxxxxxxxxxxx wrote:
> From: Akhil Goyal <akhil.goyal@xxxxxxxxxxxxx>
> AD9361 is a radio phy(RFIC) for radio networks. This phy
> can support LTE-FDD/LTE-TDD and WCDMA networks. The RFIC
> can convert the analog radio signals from air to digital
> IQ samples.
> AD9361 is controlled via an SPI bus and all the register
> read/ write can be performed via SPI transactions.
> Driver provides various operations for configuring and
> controlling the AD PHY. These can be controlled from the
> user space via the rfdev framework.
> Driver also binds itself to one of AIC lane using RF framework.
> The combination of AIC lane and PHY connected to it works
> as one RF device.
> Signed-off-by: Shaveta Leekha <shaveta@xxxxxxxxxxxxx>
> Signed-off-by: Pankaj Chauhan <pankaj.chauhan@xxxxxxxxxxxxx>
> Signed-off-by: Bhaskar Upadhaya <bhaskar.upadhaya@xxxxxxxxxxxxx>
> Signed-off-by: Akhil Goyal <akhil.goyal@xxxxxxxxxxxxx>


This is interesting. We at Analog Devices are currently also working on a
driver for this part. We are using the Linux Industrial IO (IIO) framework
though, since the AD9361 is more or less a multifunction device implementing
different functions already covered by the IIO framework, like ADCs, DACs,
clock chips and so on.

You seem to have made the kernel layer as thin as possible and provide a
IOCTL which allows userspace to directly modify the registers of the
hardware. So this sentence from the documentation "user space interface is
independent of component (vendor specific) drivers" is not exactly true. If
you write a userspace application it will still only work with one specific
RF-frontend. There is only a common interface on how to talk to the
frontend. Your documentation on this is also a bit sparse, e.g. there is no
explanation of the individual IOCTLs.

Since it is probably not such a good idea to have two different drivers for
the same device in different subsystems we should probably try to figure
something out that will work for us both.

I'd also be interested in learning more about how the userspace side looks like.

- Lars
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at