On Sun, 04 Jun 2017, Hans de Goede wrote: > Hi, > > On 30-05-17 15:05, Andy Shevchenko wrote: > > On Tue, 2017-05-30 at 13:20 +0100, Lee Jones wrote: > > > On Tue, 30 May 2017, Andy Shevchenko wrote: > > > > > > > On Tue, May 30, 2017 at 12:02 PM, Lee Jones <[email protected]> > > > > wrote: > > > > > On Tue, 23 May 2017, Hans de Goede wrote: > > > > > > +static const struct i2c_device_id cht_wc_i2c_id[] = { > > > > > > + { } > > > > > > +}; > > > > > > > > > > What's the point in this empty table? > > > > > > > > This is artifact of I2C framework, otherwise if will be not > > > > enumerated. > > > > > > > > +Wolfram. > > > > > > > > Wolfram, can we fix this? (In case we have either ACPI table or OF > > > > table there is no need to oblige providing empty legacy table) > > > > > > I think I fixed this already. > > > > > > Hint: `git grep probe_new -- drivers/i2c` > > > Indeed. > > Thanks for a hint! > > Unfortunately switching to probe_new (which I've done for > the upcoming v9 of the MFD CHT Whiskey Cove driver) is not enough, > as i2c_device_probe() (from drivers/i2c/i2c-core) still has: > > /* > * An I2C ID table is not mandatory, if and only if, a suitable Device > * Tree match table entry is supplied for the probing device. > */ > if (!driver->id_table && > !i2c_of_match_device(dev->driver->of_match_table, client)) > return -ENODEV; > > So before we can remove the empty id tables from various ACPI > drivers we first need to extend this check to also work with > ACPI device matching.
I remember writing some ACPI support (see: i2c_device_match()), but you're right, it needs a more complete implementation. None of the devices I work(ed) on support ACPI, so it wasn't a requirement for me. Perhaps you can extend the support. -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog

