[PATCH v5 0/8] iio: light: ltr501: Add ltr329 support

Esben Haabendal posted 8 patches 1 month, 1 week ago
.../bindings/iio/light/liteon,ltr501.yaml          |  32 +++++-
drivers/iio/light/ltr501.c                         | 114 +++++++++++++--------
2 files changed, 101 insertions(+), 45 deletions(-)
[PATCH v5 0/8] iio: light: ltr501: Add ltr329 support
Posted by Esben Haabendal 1 month, 1 week ago
The LiteON LTR-329ALS-01 chip is similar to the LTR-303ALS-01, except for
interrupt support and related registers, which LTR-329ALS-01 does not have.

Signed-off-by: Esben Haabendal <esben@geanix.com>
---
Changes in v5:
- Changed error handling of interrupt being configured for ltr329 device to
  just print a warning message and get on with life.
- Mark interrupt properties as invalid for liteon,ltr329 bindings.
- Changed patch 5 to not claim to be a fix.
- Link to v4: https://patch.msgid.link/20260810-liteon-ltr329-v4-0-8bd3dfd15280@geanix.com

Changes in v4:
- Split the duplicate error message removal into separate patch.
- Removed uneeded enum =0 assignment.
- Use dev_err_probe() instead of plain dev_err().
- Link to v3: https://patch.msgid.link/20260804-liteon-ltr329-v3-0-c6b768c7c745@geanix.com

Changes in v3:
- Removed duplicated error message on devm_request_threaded_irq() failure.
- Added Fixes: and Cc: stable tags to fix for error handling of
  devm_request_threaded_irq() failure.
- Added no_irq_support boolean to simplify checking for chip irq support.
- Moved check for no_irq_support from ltr501_read_intr_prst() and
  ltr501_write_intr_prst() to callers. Note: event functions are not
  registered for no_irq_support devices.
- Moved #include <linux/array_size.h> into its place according to
  alphabetical sorting order (although the rest is not really wel sorted).
- Restored alphanumerical ordering of compatible list in bindings
  documentation.
- Ordered device arrays and enum values according to alphanumerical sorting
  order.
- Link to v2: https://patch.msgid.link/20260715-liteon-ltr329-v2-0-d18af55edab5@geanix.com

Changes in v2:
- Fixed error handling when irq is defined for a chip that does not support
  irq, powering the chip down again.
- Added simlar fix to error handling of devm_request_threaded_irq() error
  handling, powering the chip down again on failure.
- Added explicit #include <linux/array_size.h>.
- Link to v1: https://patch.msgid.link/20260715-liteon-ltr329-v1-0-31f027051594@geanix.com

To: Jonathan Cameron <jic23@kernel.org>
To: David Lechner <dlechner@baylibre.com>
To: Nuno Sá <nuno.sa@analog.com>
To: Andy Shevchenko <andy@kernel.org>
To: Rob Herring <robh@kernel.org>
To: Krzysztof Kozlowski <krzk+dt@kernel.org>
To: Conor Dooley <conor+dt@kernel.org>
To: Nikita Travkin <nikita@trvn.ru>
To: Maslov Dmitry <maslovdmitry@seeed.cc>
To: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
To: Thomas Gleixner <tglx@kernel.org>
To: Pan Chuang <panchuang@vivo.com>
To: Yangtao Li <frank.li@vivo.com>
Cc: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: linux-iio@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org

---
Esben Haabendal (8):
      dt-bindings: iio: light: ltr501: Sort compatible enum array
      dt-bindings: iio: light: ltr501: Add missing ltr303 compatible
      dt-bindings: iio: light: ltr501: Add ltr329 compatible
      iio: light: ltr501: Power down chip if request irq fails
      iio: light: ltr501: Drop duplicated error message
      iio: light: ltr501: Add ltr329 driver support
      iio: light: ltr501: Fix sorting order of device arrays
      dt-bindings: iio: light: ltr501: Make proximity-near-level conditional

 .../bindings/iio/light/liteon,ltr501.yaml          |  32 +++++-
 drivers/iio/light/ltr501.c                         | 114 +++++++++++++--------
 2 files changed, 101 insertions(+), 45 deletions(-)
---
base-commit: 075b74841bd0065a3bda3440873c747938e69b68
change-id: 20260711-liteon-ltr329-a3eb12414866

Best regards,
--  
Esben Haabendal <esben@geanix.com>

Re: [PATCH v5 0/8] iio: light: ltr501: Add ltr329 support
Posted by Jonathan Cameron 1 month ago
On Mon, 17 Aug 2026 19:08:49 +0200
Esben Haabendal <esben@geanix.com> wrote:

> The LiteON LTR-329ALS-01 chip is similar to the LTR-303ALS-01, except for
> interrupt support and related registers, which LTR-329ALS-01 does not have.
> 
> Signed-off-by: Esben Haabendal <esben@geanix.com>
With tweaks to patch 4 and dropping 5, applied to the testing branch of iio.git

thanks,

Jonathan

> ---
> Changes in v5:
> - Changed error handling of interrupt being configured for ltr329 device to
>   just print a warning message and get on with life.
> - Mark interrupt properties as invalid for liteon,ltr329 bindings.
> - Changed patch 5 to not claim to be a fix.
> - Link to v4: https://patch.msgid.link/20260810-liteon-ltr329-v4-0-8bd3dfd15280@geanix.com
> 
> Changes in v4:
> - Split the duplicate error message removal into separate patch.
> - Removed uneeded enum =0 assignment.
> - Use dev_err_probe() instead of plain dev_err().
> - Link to v3: https://patch.msgid.link/20260804-liteon-ltr329-v3-0-c6b768c7c745@geanix.com
> 
> Changes in v3:
> - Removed duplicated error message on devm_request_threaded_irq() failure.
> - Added Fixes: and Cc: stable tags to fix for error handling of
>   devm_request_threaded_irq() failure.
> - Added no_irq_support boolean to simplify checking for chip irq support.
> - Moved check for no_irq_support from ltr501_read_intr_prst() and
>   ltr501_write_intr_prst() to callers. Note: event functions are not
>   registered for no_irq_support devices.
> - Moved #include <linux/array_size.h> into its place according to
>   alphabetical sorting order (although the rest is not really wel sorted).
> - Restored alphanumerical ordering of compatible list in bindings
>   documentation.
> - Ordered device arrays and enum values according to alphanumerical sorting
>   order.
> - Link to v2: https://patch.msgid.link/20260715-liteon-ltr329-v2-0-d18af55edab5@geanix.com
> 
> Changes in v2:
> - Fixed error handling when irq is defined for a chip that does not support
>   irq, powering the chip down again.
> - Added simlar fix to error handling of devm_request_threaded_irq() error
>   handling, powering the chip down again on failure.
> - Added explicit #include <linux/array_size.h>.
> - Link to v1: https://patch.msgid.link/20260715-liteon-ltr329-v1-0-31f027051594@geanix.com
> 
> To: Jonathan Cameron <jic23@kernel.org>
> To: David Lechner <dlechner@baylibre.com>
> To: Nuno Sá <nuno.sa@analog.com>
> To: Andy Shevchenko <andy@kernel.org>
> To: Rob Herring <robh@kernel.org>
> To: Krzysztof Kozlowski <krzk+dt@kernel.org>
> To: Conor Dooley <conor+dt@kernel.org>
> To: Nikita Travkin <nikita@trvn.ru>
> To: Maslov Dmitry <maslovdmitry@seeed.cc>
> To: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
> To: Thomas Gleixner <tglx@kernel.org>
> To: Pan Chuang <panchuang@vivo.com>
> To: Yangtao Li <frank.li@vivo.com>
> Cc: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> Cc: linux-iio@vger.kernel.org
> Cc: devicetree@vger.kernel.org
> Cc: linux-kernel@vger.kernel.org
> 
> ---
> Esben Haabendal (8):
>       dt-bindings: iio: light: ltr501: Sort compatible enum array
>       dt-bindings: iio: light: ltr501: Add missing ltr303 compatible
>       dt-bindings: iio: light: ltr501: Add ltr329 compatible
>       iio: light: ltr501: Power down chip if request irq fails
>       iio: light: ltr501: Drop duplicated error message
>       iio: light: ltr501: Add ltr329 driver support
>       iio: light: ltr501: Fix sorting order of device arrays
>       dt-bindings: iio: light: ltr501: Make proximity-near-level conditional
> 
>  .../bindings/iio/light/liteon,ltr501.yaml          |  32 +++++-
>  drivers/iio/light/ltr501.c                         | 114 +++++++++++++--------
>  2 files changed, 101 insertions(+), 45 deletions(-)
> ---
> base-commit: 075b74841bd0065a3bda3440873c747938e69b68
> change-id: 20260711-liteon-ltr329-a3eb12414866
> 
> Best regards,
> --  
> Esben Haabendal <esben@geanix.com>
>