Messages in this thread | | | Date | Fri, 13 May 2022 19:10:05 +0530 | Subject | Re: [PATCH v4 3/3] iio: light: Add support for ltrf216a sensor | From | Shreeya Patel <> |
| |
On 13/05/22 05:24, Dmitry Osipenko wrote:
Hi Dmitry,
> 11.05.2022 12:40, Shreeya Patel пишет: >> +static int ltrf216a_init(struct iio_dev *indio_dev) >> +{ >> + int ret; >> + struct ltrf216a_data *data = iio_priv(indio_dev); >> + >> + ret = i2c_smbus_read_byte_data(data->client, LTRF216A_MAIN_CTRL); >> + if (ret < 0) { >> + dev_err(&data->client->dev, "Error reading LTRF216A_MAIN_CTRL\n"); >> + return ret; >> + } >> + >> + /* enable sensor */ >> + ret |= FIELD_PREP(LTRF216A_ALS_ENABLE_MASK, 1); >> + ret = i2c_smbus_write_byte_data(data->client, LTRF216A_MAIN_CTRL, ret); >> + if (ret < 0) { >> + dev_err(&data->client->dev, "Error writing LTRF216A_MAIN_CTRL\n"); >> + return ret; >> + } > Couldn't you write "1" directly without reading? > > What about doing SW reset?
I think we are doing a read here just to make sure device registers are ready and accessible without any issues.
Also, why would we want to do a SW reset here?
In the datasheet, I could see the following steps to enable the sensor Supply VDD to Sensor (Sensor in Standby Mode) ---> Wait 100 ms (min) - initial startup time ---> I2C Command (Write) To enable sensor to Active Mode
Thanks, Shreeya Patel
>
| |