lkml.org 
[lkml]   [2020]   [Nov]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH 2/3] iio: adc: ad7887: convert driver to full DT probing
On Tue, Nov 17, 2020 at 1:01 PM Jonathan Cameron
<Jonathan.Cameron@huawei.com> wrote:
>
> On Tue, 17 Nov 2020 09:52:53 +0200
> Alexandru Ardelean <alexandru.ardelean@analog.com> wrote:
>
> > This change removes the SPI device table, adds an OF device table instead.
> > This should also be usable for ACPI via PRP0001.
> >
> > This device is usually probed via device-tree, so it makes more sense to
> > use the OF device table.
> >
> > Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com>
> So, we've had a few cases of having to put the device_id table
> back again recently.
> https://lore.kernel.org/linux-iio/20201101152613.2c37581a@archlinux/
>
> They tend to be due to greybus doing it's probing in yet another fashion.
> So far they've been all i2c devices, but I kind of assume it does the same for spi.
> https://elixir.bootlin.com/linux/latest/source/drivers/staging/greybus/spilib.c#L437
>
> How device_get_match_data() plays with that I'm not sure. It probably
> doesn't right now given swnode doesn't have a device_get_match_data() callback.
>
> https://elixir.bootlin.com/linux/latest/source/drivers/base/swnode.c#L539
>
> So after all that I think I've argued myself around to thinking what you have
> here is fine. If someone wants to support this via a swnode then they can
> figure out how to make that work.
>
> +CC Vaishnav and Andy for their input.

device_get_match_data() doesn't know about bus type specifics. One may
introduce a helper like

const void *spi_device_get_match_data(dev)
{
const void *match = device_get_match_data(dev);
if (match)
return match;
return spi_dev_id....;
}

And use it with the SPI ID table.

--
With Best Regards,
Andy Shevchenko

\
 
 \ /
  Last update: 2020-11-17 12:08    [W:0.232 / U:0.076 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site