Re: [PATCH v3] iio: light: tsl2563 change of_property_read to device_property_read
From: Jonathan Cameron
Date: Sun Nov 01 2020 - 10:05:13 EST
On Sun, 18 Oct 2020 20:13:38 +0530
Vaishnav M A <vaishnav@xxxxxxxxxxxxxxx> wrote:
> Replace of_property_read_u32() with device_property_read_u32,
> when reading the amstaos,cover-comp-gain.This opens up the
> possibility of passing the properties during platform instantiation
> of the device by a suitable populated struct property_entry.
> Additionally a minor change to logic is added to remove the
> of_node present check.
>
> Signed-off-by: Vaishnav M A <vaishnav@xxxxxxxxxxxxxxx>
Applied to the togreg branch of iio.git. Initially I'll push that out
as testing for the autobuilders to poke at it and see if we missed anything.
Thanks,
Jonathan
> ---
> v3:
> -modify commit message for readability, mention minor logic change
> -include mod_devicetable.h and property.h headers
> v2:
> -fix commit message
> drivers/iio/light/tsl2563.c | 16 +++++++++-------
> 1 file changed, 9 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/iio/light/tsl2563.c b/drivers/iio/light/tsl2563.c
> index abc8d7db8dc1..5bf2bfbc5379 100644
> --- a/drivers/iio/light/tsl2563.c
> +++ b/drivers/iio/light/tsl2563.c
> @@ -12,6 +12,8 @@
> */
>
> #include <linux/module.h>
> +#include <linux/mod_devicetable.h>
> +#include <linux/property.h>
> #include <linux/i2c.h>
> #include <linux/interrupt.h>
> #include <linux/irq.h>
> @@ -703,7 +705,6 @@ static int tsl2563_probe(struct i2c_client *client,
> struct iio_dev *indio_dev;
> struct tsl2563_chip *chip;
> struct tsl2563_platform_data *pdata = client->dev.platform_data;
> - struct device_node *np = client->dev.of_node;
> int err = 0;
> u8 id = 0;
>
> @@ -738,13 +739,14 @@ static int tsl2563_probe(struct i2c_client *client,
> chip->calib0 = tsl2563_calib_from_sysfs(CALIB_BASE_SYSFS);
> chip->calib1 = tsl2563_calib_from_sysfs(CALIB_BASE_SYSFS);
>
> - if (pdata)
> + if (pdata) {
> chip->cover_comp_gain = pdata->cover_comp_gain;
> - else if (np)
> - of_property_read_u32(np, "amstaos,cover-comp-gain",
> - &chip->cover_comp_gain);
> - else
> - chip->cover_comp_gain = 1;
> + } else {
> + err = device_property_read_u32(&client->dev, "amstaos,cover-comp-gain",
> + &chip->cover_comp_gain);
> + if (err)
> + chip->cover_comp_gain = 1;
> + }
>
> dev_info(&client->dev, "model %d, rev. %d\n", id >> 4, id & 0x0f);
> indio_dev->name = client->name;