Linux IIO development
 help / color / mirror / Atom feed
From: "Javier Carrasco" <javier.carrasco.cruz@gmail.com>
To: "Andy Shevchenko" <andriy.shevchenko@intel.com>,
	"Javier Carrasco" <javier.carrasco.cruz@gmail.com>
Cc: "Jonathan Cameron" <jic23@kernel.org>,
	"Lars-Peter Clausen" <lars@metafoo.de>,
	"Rob Herring" <robh@kernel.org>,
	"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
	"Conor Dooley" <conor+dt@kernel.org>,
	"David Lechner" <dlechner@baylibre.com>,
	"Nuno Sá" <nuno.sa@analog.com>,
	"Andy Shevchenko" <andy@kernel.org>,
	linux-iio@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v7 4/4] iio: light: veml6031x00: add support for events and trigger
Date: Tue, 18 Aug 2026 18:10:51 +0200	[thread overview]
Message-ID: <DKS790BEXVON.1FP9LQUPNTYDE@gmail.com> (raw)
In-Reply-To: <aoRltgy0AYZ_Vcum@ashevche-desk.local>

Hi Andy, thank you for your review. Even if no more stuff comes, I would
like to update the code in v8 with your suggestions before applying it
if nothing speaks against it.

A couple of comments to the feedback I'd like to discuss.

On Tue Aug 18, 2026 at 4:01 PM CEST, Andy Shevchenko wrote:

...

>> +static irqreturn_t veml6031x00_irq(int irq, void *private)
>> +{
>> +	struct iio_dev *iio = private;
>> +	struct veml6031x00_data *data = iio_priv(iio);
>> +	struct device *dev = regmap_get_device(data->regmap);
>> +	s64 timestamp;
>> +	unsigned int regval;
>> +	int ret;
>> +	bool trigger_poll;
>> +
>> +	ret = pm_runtime_get_if_active(dev);
>> +	if (ret <= 0)
>
> < 0 seems too much to me. If there is disabled runtime PM (and supposedly
> device is always on) this prevents from getting events.
>

I am not sure if I get this. A reference is unconditionally acquired
when events are enabled as well as in buffer_preenable, and also in the
probe before interrupts are enabled. Runtime PM should be active at this
point. If not, the interrupt should not come from the device, even if it
was on (e.g. before autosuspend kicks in). But maybe I am missing
something?

>
...

>> +static int veml6031x00_hw_init(struct veml6031x00_data *data)
>> +{
>> +	struct regmap *map = data->regmap;
>> +	struct device *dev = regmap_get_device(map);
>
>> +	__le16 regval = 0;
>
> Redundant assignment.
>

regval is assigned here to write that value in the first instruction
(regmap_bulk_write()) after the variable declaration.

>> +	int ret, val;
>
> Why is 'val' signed?
>
>> +	ret = regmap_bulk_write(map, VEML6031X00_REG_WL_L, &regval, sizeof(regval));

Here.

>> +	if (ret)
>> +		return dev_err_probe(dev, ret, "Failed to set low threshold\n");
>> +
>> +	regval = cpu_to_le16(U16_MAX);
>> +	ret = regmap_bulk_write(map, VEML6031X00_REG_WH_L, &regval, sizeof(regval));
>> +	if (ret)
>> +		return dev_err_probe(dev, ret, "Failed to set high threshold\n");
>> +
>> +	ret = regmap_field_write(data->rf.int_en, 0);
>> +	if (ret)
>> +		return ret;
>> +
>> +	ret = regmap_read(map, VEML6031X00_REG_INT, &val);
>> +	if (ret)
>> +		return dev_err_probe(dev, ret, "Failed to clear interrupts\n");
>> +
>> +	return 0;
>> +}

Best regards,
Javier

  reply	other threads:[~2026-08-18 16:10 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-18 11:34 [PATCH v7 0/4] iio: light: add support for veml6031x00 ALS series Javier Carrasco
2026-08-18 11:34 ` [PATCH v7 1/4] dt-bindings: iio: light: veml6030: add " Javier Carrasco
2026-08-18 11:34 ` [PATCH v7 2/4] iio: light: add support for " Javier Carrasco
2026-08-18 13:30   ` Andy Shevchenko
2026-08-18 11:34 ` [PATCH v7 3/4] iio: light: veml6031x00: add support for triggered buffers Javier Carrasco
2026-08-18 13:32   ` Andy Shevchenko
2026-08-18 11:34 ` [PATCH v7 4/4] iio: light: veml6031x00: add support for events and trigger Javier Carrasco
2026-08-18 14:01   ` Andy Shevchenko
2026-08-18 16:10     ` Javier Carrasco [this message]
2026-08-18 14:02 ` [PATCH v7 0/4] iio: light: add support for veml6031x00 ALS series Andy Shevchenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DKS790BEXVON.1FP9LQUPNTYDE@gmail.com \
    --to=javier.carrasco.cruz@gmail.com \
    --cc=andriy.shevchenko@intel.com \
    --cc=andy@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dlechner@baylibre.com \
    --cc=jic23@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=lars@metafoo.de \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nuno.sa@analog.com \
    --cc=robh@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox