[PATCH v2 0/2] iio: light: vcnl4000: support shared IRQs

Tsz Shan Chan posted 2 patches 1 week, 4 days ago
drivers/iio/light/vcnl4000.c | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
[PATCH v2 0/2] iio: light: vcnl4000: support shared IRQs
Posted by Tsz Shan Chan 1 week, 4 days ago
This series contains two changes for the vcnl4000 driver.

Patch 1 makes .num_channels match .channels for vcnl4200. vcnl4040 and
vcnl4000 channel arrays have the same size, so no functional change.

Patch 2 adds shared IRQ support. It changes the trigger type from
falling edge to low level and adds IRQF_SHARED. The IRQ handlers return
IRQ_NONE when the device did not generate the interrupt.

Signed-off-by: Tsz Shan Chan <tchan@jacques.com.au>
---
Changes in v2:
- 1/2: Clarify in the commit message that the channel arrays have the
  same size.
- 2/2: Drop IRQ trigger type checking and use IRQF_TRIGGER_LOW directly.
- 2/2: Check the interrupt source bits handled by the driver.
- Link to v1: https://lore.kernel.org/r/20260811-vcnl4000-v1-0-50e7fb657692@jacques.com.au

---
Tsz Shan Chan (2):
      iio: light: vcnl4000: use correct channel array size
      iio: light: vcnl4000: add shared IRQ support

 drivers/iio/light/vcnl4000.c | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)
---
base-commit: 3d6d817622b0a9721e3cc404df3469171582be13
change-id: 20260810-vcnl4000-02e19f70e706

Best regards,
-- 
Tsz Shan Chan <tchan@jacques.com.au>
Re: [PATCH v2 0/2] iio: light: vcnl4000: support shared IRQs
Posted by Andy Shevchenko 1 week, 1 day ago
On Fri, Aug 14, 2026 at 02:30:41PM +1000, Tsz Shan Chan wrote:
> This series contains two changes for the vcnl4000 driver.
> 
> Patch 1 makes .num_channels match .channels for vcnl4200. vcnl4040 and
> vcnl4000 channel arrays have the same size, so no functional change.
> 
> Patch 2 adds shared IRQ support. It changes the trigger type from
> falling edge to low level and adds IRQF_SHARED. The IRQ handlers return
> IRQ_NONE when the device did not generate the interrupt.

LGTM,
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>

-- 
With Best Regards,
Andy Shevchenko
Re: [PATCH v2 0/2] iio: light: vcnl4000: support shared IRQs
Posted by Jonathan Cameron 3 days, 11 hours ago
On Mon, 17 Aug 2026 13:55:40 +0300
Andy Shevchenko <andriy.shevchenko@intel.com> wrote:

> On Fri, Aug 14, 2026 at 02:30:41PM +1000, Tsz Shan Chan wrote:
> > This series contains two changes for the vcnl4000 driver.
> > 
> > Patch 1 makes .num_channels match .channels for vcnl4200. vcnl4040 and
> > vcnl4000 channel arrays have the same size, so no functional change.
> > 
> > Patch 2 adds shared IRQ support. It changes the trigger type from
> > falling edge to low level and adds IRQF_SHARED. The IRQ handlers return
> > IRQ_NONE when the device did not generate the interrupt.  
> 
> LGTM,
> Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
> 
See sashiko
https://sashiko.dev/#/patchset/20260814-vcnl4000-v2-0-9b771290cc1d%40jacques.com.au

It might be wrong and there isn't a race condition that ends you
with that condition of stuck level interrupt.  If so just reply here to explain why.

The one about even disabling is a common issue - the IIO core has
not explicit tracking of what events are enabled so it is up to the
driver to quiesce anything necessary on the path down. I didn't look closely
at these reports though so they may or may not be correct!

Thanks,

Jonathan