[PATCH] dt-bindings: iio: light: Add PixArt PAJ7620 gesture sensor

Harpreet Saini posted 1 patch 2 months ago
.../bindings/iio/light/pixart,paj7620.yaml    | 48 +++++++++++++++++++
.../devicetree/bindings/vendor-prefixes.yaml  |  2 +
2 files changed, 50 insertions(+)
create mode 100644 Documentation/devicetree/bindings/iio/light/pixart,paj7620.yaml
[PATCH] dt-bindings: iio: light: Add PixArt PAJ7620 gesture sensor
Posted by Harpreet Saini 2 months ago
Signed-off-by: Harpreet Saini <sainiharpreet29@yahoo.com>
---
This is part 1 of a 2-patch series proposing a driver for the PixArt
PAJ7620 gesture sensor. This patch adds the Device Tree bindings and 
registers the "pixart" vendor prefix. The driver patch will follow in 
a succeeding branch.

 .../bindings/iio/light/pixart,paj7620.yaml    | 48 +++++++++++++++++++
 .../devicetree/bindings/vendor-prefixes.yaml  |  2 +
 2 files changed, 50 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/iio/light/pixart,paj7620.yaml

diff --git a/Documentation/devicetree/bindings/iio/light/pixart,paj7620.yaml b/Documentation/devicetree/bindings/iio/light/pixart,paj7620.yaml
new file mode 100644
index 000000000000..301816485fcc
--- /dev/null
+++ b/Documentation/devicetree/bindings/iio/light/pixart,paj7620.yaml
@@ -0,0 +1,48 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/iio/light/pixart,paj7620.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: PixArt PAJ7620 Gesture Sensor
+
+maintainers:
+  - Harpreet Saini <sainiharpreet29@yahoo.com>
+
+description: |
+  The PixArt PAJ7620 is a gesture recognition sensor with an integrated
+  infrared LED and CMOS array. It communicates over an I2C interface and
+  provides gesture data via a dedicated interrupt pin.
+
+properties:
+  compatible:
+    const: pixart,paj7620
+
+  reg:
+    maxItems: 1
+    description: The I2C address of the sensor.
+
+  interrupts:
+    maxItems: 1
+    description: Interrupt mapping for the sensor's physical INT pin.
+
+required:
+  - compatible
+  - reg
+  - interrupts
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/irq.h>
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        paj7620@73 {
+            compatible = "pixart,paj7620";
+            reg = <0x73>;
+            interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
+        };
+    };
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
index ee7fd3cfe203..d73a0bf62b62 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -1273,6 +1273,8 @@ patternProperties:
     description: Pine64
   "^pineriver,.*":
     description: Shenzhen PineRiver Designs Co., Ltd.
+  "^pixart,.*":
+    description: PixArt Imaging Inc.
   "^pixcir,.*":
     description: PIXCIR MICROELECTRONICS Co., Ltd
   "^plantower,.*":
-- 
2.43.0
Re: [PATCH] dt-bindings: iio: light: Add PixArt PAJ7620 gesture sensor
Posted by David Lechner 2 months ago
On 4/12/26 7:02 PM, Harpreet Saini wrote:
> Signed-off-by: Harpreet Saini <sainiharpreet29@yahoo.com>
> ---
> This is part 1 of a 2-patch series proposing a driver for the PixArt
> PAJ7620 gesture sensor. This patch adds the Device Tree bindings and 

Gesture sensor sounds like input subsystem, not IIO.

> registers the "pixart" vendor prefix. The driver patch will follow in 
> a succeeding branch.
> 
>  .../bindings/iio/light/pixart,paj7620.yaml    | 48 +++++++++++++++++++
>  .../devicetree/bindings/vendor-prefixes.yaml  |  2 +
>  2 files changed, 50 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/iio/light/pixart,paj7620.yaml
> 
> diff --git a/Documentation/devicetree/bindings/iio/light/pixart,paj7620.yaml b/Documentation/devicetree/bindings/iio/light/pixart,paj7620.yaml
> new file mode 100644
> index 000000000000..301816485fcc
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/light/pixart,paj7620.yaml
> @@ -0,0 +1,48 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/iio/light/pixart,paj7620.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: PixArt PAJ7620 Gesture Sensor
> +
> +maintainers:
> +  - Harpreet Saini <sainiharpreet29@yahoo.com>
> +
> +description: |
> +  The PixArt PAJ7620 is a gesture recognition sensor with an integrated
> +  infrared LED and CMOS array. It communicates over an I2C interface and
> +  provides gesture data via a dedicated interrupt pin.
> +
> +properties:
> +  compatible:
> +    const: pixart,paj7620
> +
> +  reg:
> +    maxItems: 1
> +    description: The I2C address of the sensor.
> +
> +  interrupts:
> +    maxItems: 1
> +    description: Interrupt mapping for the sensor's physical INT pin.
> +

missing power supplies:

vbus-supply: true 
vled-supply: true 
vdd-supply: true

Can also be GPIO controller (if not using SPI bus), so

gpio-controller: true

#gpio-cells:
  const: 2

There is also a SPI bus, but it looks like SPI and I2C would be connected
at the same time (SPI for image data, I2C for register access). Bindings
for that could be complicated, so could wait to add that until there is an
actual user.

In general though, bindings should be as complete as possible even if the
driver doesn't implement some of the features, like gpio controller.

> +required:
> +  - compatible
> +  - reg
> +  - interrupts

power supplies should be required.


> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/interrupt-controller/irq.h>
> +    i2c {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +
> +        paj7620@73 {
> +            compatible = "pixart,paj7620";
> +            reg = <0x73>;
> +            interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
> +        };
> +    };
> diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
> index ee7fd3cfe203..d73a0bf62b62 100644
> --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
> +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
> @@ -1273,6 +1273,8 @@ patternProperties:
>      description: Pine64
>    "^pineriver,.*":
>      description: Shenzhen PineRiver Designs Co., Ltd.
> +  "^pixart,.*":
> +    description: PixArt Imaging Inc.
>    "^pixcir,.*":
>      description: PIXCIR MICROELECTRONICS Co., Ltd
>    "^plantower,.*":
Re: [PATCH] dt-bindings: iio: light: Add PixArt PAJ7620 gesture sensor
Posted by Jonathan Cameron 1 month, 3 weeks ago
On Mon, 13 Apr 2026 09:25:19 -0500
David Lechner <dlechner@baylibre.com> wrote:

> On 4/12/26 7:02 PM, Harpreet Saini wrote:
> > Signed-off-by: Harpreet Saini <sainiharpreet29@yahoo.com>
> > ---
> > This is part 1 of a 2-patch series proposing a driver for the PixArt
> > PAJ7620 gesture sensor. This patch adds the Device Tree bindings and   
> 
> Gesture sensor sounds like input subsystem, not IIO.

There is one gesture sensor in IIO but that was driven by it
being a combination of that and a proximity + ambient light sensor.

drivers/light/apds9960.c

It seems there is already a series for this one on the input list, so I'll let
any further discussion and review happen there.
Re: [PATCH] dt-bindings: iio: light: Add PixArt PAJ7620 gesture sensor
Posted by Krzysztof Kozlowski 2 months ago
On Sun, Apr 12, 2026 at 08:02:55PM -0400, Harpreet Saini wrote:
> Signed-off-by: Harpreet Saini <sainiharpreet29@yahoo.com>
> ---

Please run scripts/checkpatch.pl on the patches and fix reported
warnings. After that, run also 'scripts/checkpatch.pl --strict' on the
patches and (probably) fix more warnings. Some warnings can be ignored,
especially from --strict run, but the code here looks like it needs a
fix. Feel free to get in touch if the warning is not clear.

> This is part 1 of a 2-patch series proposing a driver for the PixArt
> PAJ7620 gesture sensor. This patch adds the Device Tree bindings and 
> registers the "pixart" vendor prefix. The driver patch will follow in 
> a succeeding branch.

No, we do not want bindings without users. The driver patch must follow
here. We also do not work with branches, but patches on mailing list.

Please read submitting patches documents - both, so also the one in DT
binding dir.

I finished the review here.

Best regards,
Krzysztof