Re: [PATCHv5 8/8] mfd: as3722: Rid driver of superfluous I2C device ID structure

From: Lee Jones
Date: Tue May 10 2016 - 03:33:43 EST


On Tue, 10 May 2016, Javier Martinez Canillas wrote:

> On 05/04/2016 11:14 AM, Kieran Bingham wrote:
> > From: Lee Jones <lee.jones@xxxxxxxxxx>
> >
> > Also remove unused second probe() parameter 'i2c_device_id'.
> >
> > Acked-by: Grant Likely <grant.likely@xxxxxxxxxx>
> > Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>
> > Signed-off-by: Kieran Bingham <kieran@xxxxxxxxxxx>
> >
> > ---
> > Changes since v4
> > - Rename .probe2 to probe_new
> > ---
> > drivers/mfd/as3722.c | 12 ++----------
> > 1 file changed, 2 insertions(+), 10 deletions(-)
> >
> > diff --git a/drivers/mfd/as3722.c b/drivers/mfd/as3722.c
> > index e1f597f97f86..28fc62af6861 100644
> > --- a/drivers/mfd/as3722.c
> > +++ b/drivers/mfd/as3722.c
> > @@ -354,8 +354,7 @@ static int as3722_i2c_of_probe(struct i2c_client *i2c,
> > return 0;
> > }
> >
> > -static int as3722_i2c_probe(struct i2c_client *i2c,
> > - const struct i2c_device_id *id)
> > +static int as3722_i2c_probe(struct i2c_client *i2c)
> > {
> > struct as3722 *as3722;
> > unsigned long irq_flags;
> > @@ -453,12 +452,6 @@ static const struct of_device_id as3722_of_match[] = {
> > };
> > MODULE_DEVICE_TABLE(of, as3722_of_match);
> >
> > -static const struct i2c_device_id as3722_i2c_id[] = {
> > - { "as3722", 0 },
> > - {},
> > -};
> > -MODULE_DEVICE_TABLE(i2c, as3722_i2c_id);
> > -
>
> Just a note that this can only be made because the driver's Kconfig symbol
> is bool and not tristate. Since for drivers that can be built as a module,
> the I2C core always reports a MODALIAS of the form "i2c:as3722" and so the
> i2c_device_id array and the MODULE_DEVICE_TABLE() are needed even when not
> used by the driver.
>
> As mentioned the change is correct for this driver but I just wanted to
> point out in case other authors try to do the same change for drivers that
> can be built as a module and so breaking module auto-loading.

Sounds like a subsequent patch might be required to fix that use-case
too. I'll add it to my TODO. :)

> Reviewed-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
>
> Best regards,

--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog