[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160510073346.GH19473@dell>
Date: Tue, 10 May 2016 08:33:46 +0100
From: Lee Jones <lee.jones@...aro.org>
To: Javier Martinez Canillas <javier@....samsung.com>
Cc: Kieran Bingham <kieran@...uared.org.uk>,
Wolfram Sang <wsa@...-dreams.de>, linux-i2c@...r.kernel.org,
linux-kernel@...r.kernel.org, grant.likely@...aro.org,
sameo@...ux.intel.com
Subject: Re: [PATCHv5 8/8] mfd: as3722: Rid driver of superfluous I2C device
ID structure
On Tue, 10 May 2016, Javier Martinez Canillas wrote:
> On 05/04/2016 11:14 AM, Kieran Bingham wrote:
> > From: Lee Jones <lee.jones@...aro.org>
> >
> > Also remove unused second probe() parameter 'i2c_device_id'.
> >
> > Acked-by: Grant Likely <grant.likely@...aro.org>
> > Signed-off-by: Lee Jones <lee.jones@...aro.org>
> > Signed-off-by: Kieran Bingham <kieran@...gham.xyz>
> >
> > ---
> > 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@....samsung.com>
>
> Best regards,
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
Powered by blists - more mailing lists