Re: [PATCH v8] mfd: Add Cherry Trail Whiskey Cove PMIC driver

From: Hans de Goede
Date: Sun Jun 04 2017 - 08:53:13 EST


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 <lee.jones@xxxxxxxxxx>
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.

Regards,

Hans