Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1592146 > unrolled thread

Re: [PATCH v5 3/4] iio: accel: adxl345: Split driver into core and I2C

Started byAndy Shevchenko <andy.shevchenko@gmail.com>
First post2017-03-03 18:10 +0100
Last post2017-03-04 07:30 +0100
Articles 2 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH v5 3/4] iio: accel: adxl345: Split driver into core and I2C Andy Shevchenko <andy.shevchenko@gmail.com> - 2017-03-03 18:10 +0100
    Re: [PATCH v5 3/4] iio: accel: adxl345: Split driver into core and  I2C Eva Rachel Retuya <eraretuya@gmail.com> - 2017-03-04 07:30 +0100

#1592146 — Re: [PATCH v5 3/4] iio: accel: adxl345: Split driver into core and I2C

FromAndy Shevchenko <andy.shevchenko@gmail.com>
Date2017-03-03 18:10 +0100
SubjectRe: [PATCH v5 3/4] iio: accel: adxl345: Split driver into core and I2C
Message-ID<tgYSl-4fZ-17@gated-at.bofh.it>
On Tue, Feb 28, 2017 at 4:37 AM, Eva Rachel Retuya <eraretuya@gmail.com> wrote:
> Move I2C-specific code into its own file and rely on regmap to access
> registers. The core code provides access to x, y, z and scale readings.

Portion of minor comments.

> +config ADXL345_I2C
> +       tristate "Analog Devices ADXL345 3-Axis Digital Accelerometer I2C Driver"

>         depends on !(INPUT_ADXL34X=y || INPUT_ADXL34X=m)

I'm wondering if it works in a form of

depends on INPUT_ADXL34X=n

> +int adxl345_common_probe(struct device *dev, struct regmap *regmap,
> +                        const char *name);
> +int adxl345_common_remove(struct device *dev);

I think a "common" word is redundant.

> - * IIO driver for ADXL345
> - * 7-bit I2C slave address: 0x1D (ALT ADDRESS pin tied to VDDIO) or
> - * 0x53 (ALT ADDRESS pin grounded)

> + * IIO core driver for ADXL345

Should not it be at the beginning of header comment?

> +static int adxl345_i2c_probe(struct i2c_client *client,
> +                            const struct i2c_device_id *id)
> +{

> +       struct regmap *regmap;
> +       const char *name = NULL;

Reverse tree order, please.

> +
> +       regmap = devm_regmap_init_i2c(client, &adxl345_i2c_regmap_config);
> +       if (IS_ERR(regmap)) {
> +               dev_err(&client->dev, "Error initializing i2c regmap: %d\n",
> +                       (int)PTR_ERR(regmap));
> +               return PTR_ERR(regmap);
> +       }
> +

> +       if (id)
> +               name = id->name;
> +
> +       return adxl345_common_probe(&client->dev, regmap, name);

Do you need temporary variable?

return adxl345_probe(&client->dev, regmap, id ? id->name : NULL);

-- 
With Best Regards,
Andy Shevchenko

[toc] | [next] | [standalone]


#1592400 — Re: [PATCH v5 3/4] iio: accel: adxl345: Split driver into core and I2C

FromEva Rachel Retuya <eraretuya@gmail.com>
Date2017-03-04 07:30 +0100
SubjectRe: [PATCH v5 3/4] iio: accel: adxl345: Split driver into core and I2C
Message-ID<thbmx-4GL-9@gated-at.bofh.it>
In reply to#1592146
On Fri, Mar 03, 2017 at 06:51:28PM +0200, Andy Shevchenko wrote:
> On Tue, Feb 28, 2017 at 4:37 AM, Eva Rachel Retuya <eraretuya@gmail.com> wrote:
> > Move I2C-specific code into its own file and rely on regmap to access
> > registers. The core code provides access to x, y, z and scale readings.
> 
> Portion of minor comments.
> 
> > +config ADXL345_I2C
> > +       tristate "Analog Devices ADXL345 3-Axis Digital Accelerometer I2C Driver"
> 
> >         depends on !(INPUT_ADXL34X=y || INPUT_ADXL34X=m)
> 
> I'm wondering if it works in a form of
> 
> depends on INPUT_ADXL34X=n
> 

Yes it works. Will change it into this form.

> > +int adxl345_common_probe(struct device *dev, struct regmap *regmap,
> > +                        const char *name);
> > +int adxl345_common_remove(struct device *dev);
> 
> I think a "common" word is redundant.
> 

OK. I will use "core" instead.

> > - * IIO driver for ADXL345
> > - * 7-bit I2C slave address: 0x1D (ALT ADDRESS pin tied to VDDIO) or
> > - * 0x53 (ALT ADDRESS pin grounded)
> 
> > + * IIO core driver for ADXL345
> 
> Should not it be at the beginning of header comment?
> 

Ack.

> > +static int adxl345_i2c_probe(struct i2c_client *client,
> > +                            const struct i2c_device_id *id)
> > +{
> 
> > +       struct regmap *regmap;
> > +       const char *name = NULL;
> 
> Reverse tree order, please.
> 
> > +
> > +       regmap = devm_regmap_init_i2c(client, &adxl345_i2c_regmap_config);
> > +       if (IS_ERR(regmap)) {
> > +               dev_err(&client->dev, "Error initializing i2c regmap: %d\n",
> > +                       (int)PTR_ERR(regmap));
> > +               return PTR_ERR(regmap);
> > +       }
> > +
> 
> > +       if (id)
> > +               name = id->name;
> > +
> > +       return adxl345_common_probe(&client->dev, regmap, name);
> 
> Do you need temporary variable?
> 
> return adxl345_probe(&client->dev, regmap, id ? id->name : NULL);
> 

Will remove it and use the form you suggest.

Thanks,
Eva

> -- 
> With Best Regards,
> Andy Shevchenko

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web