Re: [PATCH 3/3] iio: chemical: Add OF match table for CCS811 VOC sensor

From: Manivannan Sadhasivam
Date: Tue Apr 14 2020 - 07:52:11 EST


On Mon, Apr 13, 2020 at 05:50:54PM +0100, Jonathan Cameron wrote:
> On Mon, 13 Apr 2020 00:06:58 +0530
> mani@xxxxxxxxxx wrote:
>
> > From: Manivannan Sadhasivam <mani@xxxxxxxxxx>
> >
> > Add devicetree OF match table support for CCS811 VOC sensor.
> >
> > Signed-off-by: Manivannan Sadhasivam <mani@xxxxxxxxxx>
>
> Hi,
>
> A few small things to clean up inline
>
> Thanks,
>
> Jonathan
>
> > ---
> > drivers/iio/chemical/ccs811.c | 8 ++++++++
> > 1 file changed, 8 insertions(+)
> >
> > diff --git a/drivers/iio/chemical/ccs811.c b/drivers/iio/chemical/ccs811.c
> > index 6cd92c49c348..313931208f61 100644
> > --- a/drivers/iio/chemical/ccs811.c
> > +++ b/drivers/iio/chemical/ccs811.c
> > @@ -24,6 +24,7 @@
> > #include <linux/iio/triggered_buffer.h>
> > #include <linux/iio/trigger_consumer.h>
> > #include <linux/module.h>
> > +#include <linux/of.h>
>
> You are including this just to get things in mod_devicetable.h
> so include that directly instead.
>

I added this include for of_match_ptr. Since it is not needed anymore, I'll drop
this.

> >
> > #define CCS811_STATUS 0x00
> > #define CCS811_MEAS_MODE 0x01
> > @@ -538,9 +539,16 @@ static const struct i2c_device_id ccs811_id[] = {
> > };
> > MODULE_DEVICE_TABLE(i2c, ccs811_id);
> >
> > +static const struct of_device_id ccs811_dt_ids[] = {
> > + { .compatible = "ams,ccs811" },
> > + { }
> > +};
> > +MODULE_DEVICE_TABLE(of, ccs811_dt_ids);
> > +
> > static struct i2c_driver ccs811_driver = {
> > .driver = {
> > .name = "ccs811",
> > + .of_match_table = of_match_ptr(ccs811_dt_ids),
> No need for the of_match_ptr macro. It has several issues.
>
> 1) Blocks PRP001 ACPI magic device types being used to instantiate
> this using the device tree binding but under ACPI.
> 2) Will give warnings about ccs811_dt_ids being unused on no
> device tree builds.
>

Okay, will use ccs811_dt_ids directly.

Thanks,
Mani

> > },
> > .probe = ccs811_probe,
> > .remove = ccs811_remove,
>