Re: [PATCH] iio: inkern: Add of_xlate function to struct iio_dev

Lars-Peter Clausen
2014-10-18T11:50:17Z

On 10/18/2014 01:42 PM, Jonathan Cameron wrote:
> On 02/10/14 13:32, Ivan T. Ivanov wrote:
>> When #iio-cells is greater than '0', the driver could provide
>> a custom of_xlate function that reads the *args* and returns
>> the appropriate index in registered IIO channels array.
>>
>> Add simple translation function, suitable for the most 1:1
>> mapped channels in IIO chips, and use it when driver did not
>> provide custom implementation.
>>
>> Signed-off-by: Ivan T. Ivanov <iivanov@mm-sol.com>
> Any more comments on this? Been sat a while and the discussions seems
> to have died out.
>
> As Ivan has pointed out, very similar approaches are used
> elsewhere (gpio for example).

Looks good to me:

Reviewed-by: Lars-Peter Clausen <lars@metafoo.de>

When we initially added the DT support to IIO I was hoping that we can get
away with just using the simple and generic xlate function for all devices.
But it looks as if some more complex devices need to overwrite it. We should
be careful about adding new driver specific xlate implementations and make
sure that it is actually needed.

One thing we might want to consider though is instead of adding the xlate
callback to the iio_dev struct add it to the iio_info struct since it should
be the same for different device instances of the same driver. And this is
also where all the other callbacks are.

- Lars