linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/4] Input: zforce_ts: standard properties
@ 2023-08-15 18:29 Andreas Kemnade
  2023-08-15 18:29 ` [PATCH 1/4] dt-bindings: touchscreen: convert neonode,zforce to json-schema Andreas Kemnade
                   ` (3 more replies)
  0 siblings, 4 replies; 10+ messages in thread
From: Andreas Kemnade @ 2023-08-15 18:29 UTC (permalink / raw)
  To: dmitry.torokhov, robh+dt, krzysztof.kozlowski+dt, conor+dt,
	shawnguo, s.hauer, kernel, festevam, linux-imx, rydberg,
	u.kleine-koenig, linus.walleij, Jonathan.Cameron, linux-input,
	devicetree, linux-kernel, linux-arm-kernel
  Cc: Andreas Kemnade

Accept standard touchscreen properties to also enable specification
of touchscreen orientation. 

Andreas Kemnade (4):
  dt-bindings: touchscreen: convert neonode,zforce to json-schema
  dt-bindings: touchscreen: neonode,zforce: Use standard properties
  Input: zforce_ts: Accept standard touchscreen properties
  ARM: dts: imx6sl-tolino-shine2hd: fix touchscreen rotation

 .../input/touchscreen/neonode,zforce.yaml     | 72 +++++++++++++++++++
 .../bindings/input/touchscreen/zforce_ts.txt  | 34 ---------
 .../dts/nxp/imx/imx6sl-tolino-shine2hd.dts    |  6 +-
 drivers/input/touchscreen/zforce_ts.c         | 36 +++++-----
 4 files changed, 94 insertions(+), 54 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
 delete mode 100644 Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt

-- 
2.39.2


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH 1/4] dt-bindings: touchscreen: convert neonode,zforce to json-schema
  2023-08-15 18:29 [PATCH 0/4] Input: zforce_ts: standard properties Andreas Kemnade
@ 2023-08-15 18:29 ` Andreas Kemnade
  2023-08-16 14:52   ` Conor Dooley
  2023-08-15 18:29 ` [PATCH 2/4] dt-bindings: touchscreen: neonode,zforce: Use standard properties Andreas Kemnade
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 10+ messages in thread
From: Andreas Kemnade @ 2023-08-15 18:29 UTC (permalink / raw)
  To: dmitry.torokhov, robh+dt, krzysztof.kozlowski+dt, conor+dt,
	shawnguo, s.hauer, kernel, festevam, linux-imx, rydberg,
	u.kleine-koenig, linus.walleij, Jonathan.Cameron, linux-input,
	devicetree, linux-kernel, linux-arm-kernel
  Cc: Andreas Kemnade

Convert Neonode infrared touchscreen controller binding to DT schema.

Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
---
 .../input/touchscreen/neonode,zforce.yaml     | 67 +++++++++++++++++++
 .../bindings/input/touchscreen/zforce_ts.txt  | 34 ----------
 2 files changed, 67 insertions(+), 34 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
 delete mode 100644 Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt

diff --git a/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml b/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
new file mode 100644
index 000000000000..1c45adb2407a
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
@@ -0,0 +1,67 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/input/touchscreen/neonode,zforce.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Neonode infrared touchscreen controller
+
+maintainers:
+  - Heiko Stuebner <heiko.stuebner@bqreaders.com>
+
+properties:
+  compatible:
+    const: neonode,zforce
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  reset-gpios:
+    maxItems: 1
+
+  irq-gpios:
+    maxItems: 1
+
+  x-size:
+    $ref: /schemas/types.yaml#/definitions/uint32
+
+  y-size:
+    $ref: /schemas/types.yaml#/definitions/uint32
+
+  vdd-supply: true
+
+required:
+  - compatible
+  - reg
+  - interrupts
+  - reset-gpios
+  - x-size
+  - y-size
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/irq.h>
+
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        touchscreen@50 {
+            compatible = "neonode,zforce";
+            reg = <0x50>;
+            interrupts = <2 0>;
+            vdd-supply = <&reg_zforce_vdd>;
+
+            reset-gpios = <&gpio5 9 0>; /* RST */
+            irq-gpios = <&gpio5 6 0>; /* IRQ, optional */
+
+            x-size = <800>;
+            y-size = <600>;
+        };
+    };
+...
diff --git a/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt b/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt
deleted file mode 100644
index e3c27c4fd9c8..000000000000
--- a/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt
+++ /dev/null
@@ -1,34 +0,0 @@
-* Neonode infrared touchscreen controller
-
-Required properties:
-- compatible: must be "neonode,zforce"
-- reg: I2C address of the chip
-- interrupts: interrupt to which the chip is connected
-- reset-gpios: reset gpio the chip is connected to
-- x-size: horizontal resolution of touchscreen
-- y-size: vertical resolution of touchscreen
-
-Optional properties:
-- irq-gpios : interrupt gpio the chip is connected to
-- vdd-supply: Regulator controlling the controller supply
-
-Example:
-
-	i2c@00000000 {
-		/* ... */
-
-		zforce_ts@50 {
-			compatible = "neonode,zforce";
-			reg = <0x50>;
-			interrupts = <2 0>;
-			vdd-supply = <&reg_zforce_vdd>;
-
-			reset-gpios = <&gpio5 9 0>; /* RST */
-			irq-gpios = <&gpio5 6 0>; /* IRQ, optional */
-
-			x-size = <800>;
-			y-size = <600>;
-		};
-
-		/* ... */
-	};
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 2/4] dt-bindings: touchscreen: neonode,zforce: Use standard properties
  2023-08-15 18:29 [PATCH 0/4] Input: zforce_ts: standard properties Andreas Kemnade
  2023-08-15 18:29 ` [PATCH 1/4] dt-bindings: touchscreen: convert neonode,zforce to json-schema Andreas Kemnade
@ 2023-08-15 18:29 ` Andreas Kemnade
  2023-08-21 19:35   ` Rob Herring
  2023-08-15 18:29 ` [PATCH 3/4] Input: zforce_ts: Accept standard touchscreen properties Andreas Kemnade
  2023-08-15 18:29 ` [PATCH 4/4] ARM: dts: imx6sl-tolino-shine2hd: fix touchscreen rotation Andreas Kemnade
  3 siblings, 1 reply; 10+ messages in thread
From: Andreas Kemnade @ 2023-08-15 18:29 UTC (permalink / raw)
  To: dmitry.torokhov, robh+dt, krzysztof.kozlowski+dt, conor+dt,
	shawnguo, s.hauer, kernel, festevam, linux-imx, rydberg,
	u.kleine-koenig, linus.walleij, Jonathan.Cameron, linux-input,
	devicetree, linux-kernel, linux-arm-kernel
  Cc: Andreas Kemnade

Enable touchscreen orientation to be specified by using standard
properties.

Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
---
 .../bindings/input/touchscreen/neonode,zforce.yaml  | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml b/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
index 1c45adb2407a..03513f38c9cc 100644
--- a/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
+++ b/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
@@ -9,6 +9,9 @@ title: Neonode infrared touchscreen controller
 maintainers:
   - Heiko Stuebner <heiko.stuebner@bqreaders.com>
 
+allOf:
+  - $ref: touchscreen.yaml#
+
 properties:
   compatible:
     const: neonode,zforce
@@ -26,9 +29,11 @@ properties:
     maxItems: 1
 
   x-size:
+    deprecated: true
     $ref: /schemas/types.yaml#/definitions/uint32
 
   y-size:
+    deprecated: true
     $ref: /schemas/types.yaml#/definitions/uint32
 
   vdd-supply: true
@@ -38,8 +43,6 @@ required:
   - reg
   - interrupts
   - reset-gpios
-  - x-size
-  - y-size
 
 unevaluatedProperties: false
 
@@ -60,8 +63,10 @@ examples:
             reset-gpios = <&gpio5 9 0>; /* RST */
             irq-gpios = <&gpio5 6 0>; /* IRQ, optional */
 
-            x-size = <800>;
-            y-size = <600>;
+            touchscreen-min-x = <0>;
+            touchscreen-size-x = <800>;
+            touchscreen-min-y = <0>;
+            touchscreen-size-y = <600>;
         };
     };
 ...
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 3/4] Input: zforce_ts: Accept standard touchscreen properties
  2023-08-15 18:29 [PATCH 0/4] Input: zforce_ts: standard properties Andreas Kemnade
  2023-08-15 18:29 ` [PATCH 1/4] dt-bindings: touchscreen: convert neonode,zforce to json-schema Andreas Kemnade
  2023-08-15 18:29 ` [PATCH 2/4] dt-bindings: touchscreen: neonode,zforce: Use standard properties Andreas Kemnade
@ 2023-08-15 18:29 ` Andreas Kemnade
  2023-08-15 18:29 ` [PATCH 4/4] ARM: dts: imx6sl-tolino-shine2hd: fix touchscreen rotation Andreas Kemnade
  3 siblings, 0 replies; 10+ messages in thread
From: Andreas Kemnade @ 2023-08-15 18:29 UTC (permalink / raw)
  To: dmitry.torokhov, robh+dt, krzysztof.kozlowski+dt, conor+dt,
	shawnguo, s.hauer, kernel, festevam, linux-imx, rydberg,
	u.kleine-koenig, linus.walleij, Jonathan.Cameron, linux-input,
	devicetree, linux-kernel, linux-arm-kernel
  Cc: Andreas Kemnade

Only driver-specific properties were accepted, change it
to use the now-available standard properties.

Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
---
 drivers/input/touchscreen/zforce_ts.c | 36 +++++++++++++--------------
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/drivers/input/touchscreen/zforce_ts.c b/drivers/input/touchscreen/zforce_ts.c
index 5be5112845e1..f4397497bbe9 100644
--- a/drivers/input/touchscreen/zforce_ts.c
+++ b/drivers/input/touchscreen/zforce_ts.c
@@ -20,6 +20,7 @@
 #include <linux/device.h>
 #include <linux/sysfs.h>
 #include <linux/input/mt.h>
+#include <linux/input/touchscreen.h>
 #include <linux/platform_data/zforce_ts.h>
 #include <linux/regulator/consumer.h>
 #include <linux/of.h>
@@ -106,6 +107,7 @@ struct zforce_point {
 struct zforce_ts {
 	struct i2c_client	*client;
 	struct input_dev	*input;
+	struct touchscreen_properties prop;
 	const struct zforce_ts_platdata *pdata;
 	char			phys[32];
 
@@ -266,7 +268,6 @@ static int zforce_setconfig(struct zforce_ts *ts, char b1)
 static int zforce_start(struct zforce_ts *ts)
 {
 	struct i2c_client *client = ts->client;
-	const struct zforce_ts_platdata *pdata = ts->pdata;
 	int ret;
 
 	dev_dbg(&client->dev, "starting device\n");
@@ -277,7 +278,7 @@ static int zforce_start(struct zforce_ts *ts)
 		return ret;
 	}
 
-	ret = zforce_resolution(ts, pdata->x_max, pdata->y_max);
+	ret = zforce_resolution(ts, ts->prop.max_x, ts->prop.max_y);
 	if (ret) {
 		dev_err(&client->dev, "Unable to set resolution, %d\n", ret);
 		goto error;
@@ -337,7 +338,6 @@ static int zforce_stop(struct zforce_ts *ts)
 static int zforce_touch_event(struct zforce_ts *ts, u8 *payload)
 {
 	struct i2c_client *client = ts->client;
-	const struct zforce_ts_platdata *pdata = ts->pdata;
 	struct zforce_point point;
 	int count, i, num = 0;
 
@@ -355,8 +355,8 @@ static int zforce_touch_event(struct zforce_ts *ts, u8 *payload)
 		point.coord_y =
 			payload[9 * i + 4] << 8 | payload[9 * i + 3];
 
-		if (point.coord_x > pdata->x_max ||
-		    point.coord_y > pdata->y_max) {
+		if (point.coord_x > ts->prop.max_x ||
+		    point.coord_y > ts->prop.max_y) {
 			dev_warn(&client->dev, "coordinates (%d,%d) invalid\n",
 				point.coord_x, point.coord_y);
 			point.coord_x = point.coord_y = 0;
@@ -390,10 +390,11 @@ static int zforce_touch_event(struct zforce_ts *ts, u8 *payload)
 						point.state != STATE_UP);
 
 		if (point.state != STATE_UP) {
-			input_report_abs(ts->input, ABS_MT_POSITION_X,
-					 point.coord_x);
-			input_report_abs(ts->input, ABS_MT_POSITION_Y,
-					 point.coord_y);
+			touchscreen_report_pos(ts->input,
+					       &ts->prop,
+					       point.coord_x,
+					       point.coord_y,
+					       true);
 			input_report_abs(ts->input, ABS_MT_TOUCH_MAJOR,
 					 point.area_major);
 			input_report_abs(ts->input, ABS_MT_TOUCH_MINOR,
@@ -719,15 +720,8 @@ static struct zforce_ts_platdata *zforce_parse_dt(struct device *dev)
 		return ERR_PTR(-ENOMEM);
 	}
 
-	if (of_property_read_u32(np, "x-size", &pdata->x_max)) {
-		dev_err(dev, "failed to get x-size property\n");
-		return ERR_PTR(-EINVAL);
-	}
-
-	if (of_property_read_u32(np, "y-size", &pdata->y_max)) {
-		dev_err(dev, "failed to get y-size property\n");
-		return ERR_PTR(-EINVAL);
-	}
+	of_property_read_u32(np, "x-size", &pdata->x_max);
+	of_property_read_u32(np, "y-size", &pdata->y_max);
 
 	return pdata;
 }
@@ -856,6 +850,12 @@ static int zforce_probe(struct i2c_client *client)
 	input_set_abs_params(input_dev, ABS_MT_POSITION_Y, 0,
 			     pdata->y_max, 0, 0);
 
+	touchscreen_parse_properties(input_dev, true, &ts->prop);
+	if (ts->prop.max_x == 0 || ts->prop.max_y == 0) {
+		dev_err(&client->dev, "no size specified\n");
+		return -EINVAL;
+	}
+
 	input_set_abs_params(input_dev, ABS_MT_TOUCH_MAJOR, 0,
 			     ZFORCE_MAX_AREA, 0, 0);
 	input_set_abs_params(input_dev, ABS_MT_TOUCH_MINOR, 0,
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 4/4] ARM: dts: imx6sl-tolino-shine2hd: fix touchscreen rotation
  2023-08-15 18:29 [PATCH 0/4] Input: zforce_ts: standard properties Andreas Kemnade
                   ` (2 preceding siblings ...)
  2023-08-15 18:29 ` [PATCH 3/4] Input: zforce_ts: Accept standard touchscreen properties Andreas Kemnade
@ 2023-08-15 18:29 ` Andreas Kemnade
  3 siblings, 0 replies; 10+ messages in thread
From: Andreas Kemnade @ 2023-08-15 18:29 UTC (permalink / raw)
  To: dmitry.torokhov, robh+dt, krzysztof.kozlowski+dt, conor+dt,
	shawnguo, s.hauer, kernel, festevam, linux-imx, rydberg,
	u.kleine-koenig, linus.walleij, Jonathan.Cameron, linux-input,
	devicetree, linux-kernel, linux-arm-kernel
  Cc: Andreas Kemnade

The display is in landscape orientation, but the touchscreen is in portrait
orientation. Specify that properly in the devicetree.

Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
---
 arch/arm/boot/dts/nxp/imx/imx6sl-tolino-shine2hd.dts | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-shine2hd.dts b/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-shine2hd.dts
index 815119c12bd4..5636fb3661e8 100644
--- a/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-shine2hd.dts
+++ b/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-shine2hd.dts
@@ -141,8 +141,10 @@ zforce: touchscreen@50 {
 		interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
 		vdd-supply = <&ldo1_reg>;
 		reset-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
-		x-size = <1072>;
-		y-size = <1448>;
+		touchscreen-size-x = <1072>;
+		touchscreen-size-y = <1448>;
+		touchscreen-swapped-x-y;
+		touchscreen-inverted-x;
 	};
 
 	/* TODO: TPS65185 PMIC for E Ink at 0x68 */
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/4] dt-bindings: touchscreen: convert neonode,zforce to json-schema
  2023-08-15 18:29 ` [PATCH 1/4] dt-bindings: touchscreen: convert neonode,zforce to json-schema Andreas Kemnade
@ 2023-08-16 14:52   ` Conor Dooley
  2023-08-16 17:18     ` Heiko Stübner
  2023-08-16 17:20     ` Andreas Kemnade
  0 siblings, 2 replies; 10+ messages in thread
From: Conor Dooley @ 2023-08-16 14:52 UTC (permalink / raw)
  To: Andreas Kemnade
  Cc: dmitry.torokhov, robh+dt, krzysztof.kozlowski+dt, conor+dt,
	shawnguo, s.hauer, kernel, festevam, linux-imx, rydberg,
	u.kleine-koenig, linus.walleij, Jonathan.Cameron, linux-input,
	devicetree, linux-kernel, linux-arm-kernel, heiko

[-- Attachment #1: Type: text/plain, Size: 3774 bytes --]

On Tue, Aug 15, 2023 at 08:29:45PM +0200, Andreas Kemnade wrote:
> Convert Neonode infrared touchscreen controller binding to DT schema.
> 
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> ---
>  .../input/touchscreen/neonode,zforce.yaml     | 67 +++++++++++++++++++
>  .../bindings/input/touchscreen/zforce_ts.txt  | 34 ----------
>  2 files changed, 67 insertions(+), 34 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
>  delete mode 100644 Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt
> 
> diff --git a/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml b/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
> new file mode 100644
> index 000000000000..1c45adb2407a
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
> @@ -0,0 +1,67 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/input/touchscreen/neonode,zforce.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Neonode infrared touchscreen controller
> +
> +maintainers:
> +  - Heiko Stuebner <heiko.stuebner@bqreaders.com>

It;d be good to CC the person you're volunteering! I've done so.

> +
> +properties:
> +  compatible:
> +    const: neonode,zforce
> +
> +  reg:
> +    maxItems: 1
> +
> +  interrupts:
> +    maxItems: 1
> +
> +  reset-gpios:
> +    maxItems: 1
> +
> +  irq-gpios:
> +    maxItems: 1
> +
> +  x-size:
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +
> +  y-size:
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +
> +  vdd-supply: true
> +
> +required:
> +  - compatible
> +  - reg
> +  - interrupts
> +  - reset-gpios
> +  - x-size
> +  - y-size
> +
> +unevaluatedProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/interrupt-controller/irq.h>
> +
> +    i2c {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +
> +        touchscreen@50 {
> +            compatible = "neonode,zforce";
> +            reg = <0x50>;
> +            interrupts = <2 0>;
> +            vdd-supply = <&reg_zforce_vdd>;
> +
> +            reset-gpios = <&gpio5 9 0>; /* RST */
> +            irq-gpios = <&gpio5 6 0>; /* IRQ, optional */
> +
> +            x-size = <800>;
> +            y-size = <600>;
> +        };
> +    };
> +...
> diff --git a/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt b/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt
> deleted file mode 100644
> index e3c27c4fd9c8..000000000000
> --- a/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt
> +++ /dev/null
> @@ -1,34 +0,0 @@
> -* Neonode infrared touchscreen controller
> -
> -Required properties:
> -- compatible: must be "neonode,zforce"
> -- reg: I2C address of the chip
> -- interrupts: interrupt to which the chip is connected
> -- reset-gpios: reset gpio the chip is connected to
> -- x-size: horizontal resolution of touchscreen
> -- y-size: vertical resolution of touchscreen
> -
> -Optional properties:
> -- irq-gpios : interrupt gpio the chip is connected to
> -- vdd-supply: Regulator controlling the controller supply
> -
> -Example:
> -
> -	i2c@00000000 {
> -		/* ... */
> -
> -		zforce_ts@50 {
> -			compatible = "neonode,zforce";
> -			reg = <0x50>;
> -			interrupts = <2 0>;
> -			vdd-supply = <&reg_zforce_vdd>;
> -
> -			reset-gpios = <&gpio5 9 0>; /* RST */
> -			irq-gpios = <&gpio5 6 0>; /* IRQ, optional */
> -
> -			x-size = <800>;
> -			y-size = <600>;
> -		};
> -
> -		/* ... */
> -	};
> -- 
> 2.39.2
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/4] dt-bindings: touchscreen: convert neonode,zforce to json-schema
  2023-08-16 14:52   ` Conor Dooley
@ 2023-08-16 17:18     ` Heiko Stübner
  2023-08-16 17:20     ` Andreas Kemnade
  1 sibling, 0 replies; 10+ messages in thread
From: Heiko Stübner @ 2023-08-16 17:18 UTC (permalink / raw)
  To: Andreas Kemnade, Conor Dooley
  Cc: dmitry.torokhov, robh+dt, krzysztof.kozlowski+dt, conor+dt,
	shawnguo, s.hauer, kernel, festevam, linux-imx, rydberg,
	u.kleine-koenig, linus.walleij, Jonathan.Cameron, linux-input,
	devicetree, linux-kernel, linux-arm-kernel

Hi,

Am Mittwoch, 16. August 2023, 16:52:16 CEST schrieb Conor Dooley:
> On Tue, Aug 15, 2023 at 08:29:45PM +0200, Andreas Kemnade wrote:
> > Convert Neonode infrared touchscreen controller binding to DT schema.
> > 
> > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > ---
> >  .../input/touchscreen/neonode,zforce.yaml     | 67 +++++++++++++++++++
> >  .../bindings/input/touchscreen/zforce_ts.txt  | 34 ----------
> >  2 files changed, 67 insertions(+), 34 deletions(-)
> >  create mode 100644 Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
> >  delete mode 100644 Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt
> > 
> > diff --git a/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml b/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
> > new file mode 100644
> > index 000000000000..1c45adb2407a
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
> > @@ -0,0 +1,67 @@
> > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/input/touchscreen/neonode,zforce.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Neonode infrared touchscreen controller
> > +
> > +maintainers:
> > +  - Heiko Stuebner <heiko.stuebner@bqreaders.com>
> 
> It;d be good to CC the person you're volunteering! I've done so.

BQ the company is no more. So I have no issue with me being in there,
afterall I did that driver back then, but I guess my main and permanent
address of heiko@sntech.de might be more appropriate :-)

Heiko


> > +
> > +properties:
> > +  compatible:
> > +    const: neonode,zforce
> > +
> > +  reg:
> > +    maxItems: 1
> > +
> > +  interrupts:
> > +    maxItems: 1
> > +
> > +  reset-gpios:
> > +    maxItems: 1
> > +
> > +  irq-gpios:
> > +    maxItems: 1
> > +
> > +  x-size:
> > +    $ref: /schemas/types.yaml#/definitions/uint32
> > +
> > +  y-size:
> > +    $ref: /schemas/types.yaml#/definitions/uint32
> > +
> > +  vdd-supply: true
> > +
> > +required:
> > +  - compatible
> > +  - reg
> > +  - interrupts
> > +  - reset-gpios
> > +  - x-size
> > +  - y-size
> > +
> > +unevaluatedProperties: false
> > +
> > +examples:
> > +  - |
> > +    #include <dt-bindings/interrupt-controller/irq.h>
> > +
> > +    i2c {
> > +        #address-cells = <1>;
> > +        #size-cells = <0>;
> > +
> > +        touchscreen@50 {
> > +            compatible = "neonode,zforce";
> > +            reg = <0x50>;
> > +            interrupts = <2 0>;
> > +            vdd-supply = <&reg_zforce_vdd>;
> > +
> > +            reset-gpios = <&gpio5 9 0>; /* RST */
> > +            irq-gpios = <&gpio5 6 0>; /* IRQ, optional */
> > +
> > +            x-size = <800>;
> > +            y-size = <600>;
> > +        };
> > +    };
> > +...
> > diff --git a/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt b/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt
> > deleted file mode 100644
> > index e3c27c4fd9c8..000000000000
> > --- a/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt
> > +++ /dev/null
> > @@ -1,34 +0,0 @@
> > -* Neonode infrared touchscreen controller
> > -
> > -Required properties:
> > -- compatible: must be "neonode,zforce"
> > -- reg: I2C address of the chip
> > -- interrupts: interrupt to which the chip is connected
> > -- reset-gpios: reset gpio the chip is connected to
> > -- x-size: horizontal resolution of touchscreen
> > -- y-size: vertical resolution of touchscreen
> > -
> > -Optional properties:
> > -- irq-gpios : interrupt gpio the chip is connected to
> > -- vdd-supply: Regulator controlling the controller supply
> > -
> > -Example:
> > -
> > -	i2c@00000000 {
> > -		/* ... */
> > -
> > -		zforce_ts@50 {
> > -			compatible = "neonode,zforce";
> > -			reg = <0x50>;
> > -			interrupts = <2 0>;
> > -			vdd-supply = <&reg_zforce_vdd>;
> > -
> > -			reset-gpios = <&gpio5 9 0>; /* RST */
> > -			irq-gpios = <&gpio5 6 0>; /* IRQ, optional */
> > -
> > -			x-size = <800>;
> > -			y-size = <600>;
> > -		};
> > -
> > -		/* ... */
> > -	};
> 





^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/4] dt-bindings: touchscreen: convert neonode,zforce to json-schema
  2023-08-16 14:52   ` Conor Dooley
  2023-08-16 17:18     ` Heiko Stübner
@ 2023-08-16 17:20     ` Andreas Kemnade
  2023-08-16 17:55       ` Conor Dooley
  1 sibling, 1 reply; 10+ messages in thread
From: Andreas Kemnade @ 2023-08-16 17:20 UTC (permalink / raw)
  To: Conor Dooley
  Cc: dmitry.torokhov, robh+dt, krzysztof.kozlowski+dt, conor+dt,
	shawnguo, s.hauer, kernel, festevam, linux-imx, rydberg,
	u.kleine-koenig, linus.walleij, Jonathan.Cameron, linux-input,
	devicetree, linux-kernel, linux-arm-kernel, heiko

On Wed, 16 Aug 2023 15:52:16 +0100
Conor Dooley <conor@kernel.org> wrote:

> On Tue, Aug 15, 2023 at 08:29:45PM +0200, Andreas Kemnade wrote:
> > Convert Neonode infrared touchscreen controller binding to DT schema.
> > 
> > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > ---
> >  .../input/touchscreen/neonode,zforce.yaml     | 67 +++++++++++++++++++
> >  .../bindings/input/touchscreen/zforce_ts.txt  | 34 ----------
> >  2 files changed, 67 insertions(+), 34 deletions(-)
> >  create mode 100644 Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
> >  delete mode 100644 Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt
> > 
> > diff --git a/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml b/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
> > new file mode 100644
> > index 000000000000..1c45adb2407a
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
> > @@ -0,0 +1,67 @@
> > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/input/touchscreen/neonode,zforce.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Neonode infrared touchscreen controller
> > +
> > +maintainers:
> > +  - Heiko Stuebner <heiko.stuebner@bqreaders.com>  
> 
> It;d be good to CC the person you're volunteering! I've done so.
> 
well, apparently my get_maintainer.pl | confirm_and_add_addresses | git send-email
script did not run in the kernel checkout I applied the patch to, so it did
not catch that address. Sorry. BTW: What is common practice for the maintainer address
in the binding in conversions? Here I looked at the commits of the plaintext binding.

Regards,
Andreas

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/4] dt-bindings: touchscreen: convert neonode,zforce to json-schema
  2023-08-16 17:20     ` Andreas Kemnade
@ 2023-08-16 17:55       ` Conor Dooley
  0 siblings, 0 replies; 10+ messages in thread
From: Conor Dooley @ 2023-08-16 17:55 UTC (permalink / raw)
  To: Andreas Kemnade
  Cc: dmitry.torokhov, robh+dt, krzysztof.kozlowski+dt, conor+dt,
	shawnguo, s.hauer, kernel, festevam, linux-imx, rydberg,
	u.kleine-koenig, linus.walleij, Jonathan.Cameron, linux-input,
	devicetree, linux-kernel, linux-arm-kernel, heiko

[-- Attachment #1: Type: text/plain, Size: 2011 bytes --]

On Wed, Aug 16, 2023 at 07:20:49PM +0200, Andreas Kemnade wrote:
> On Wed, 16 Aug 2023 15:52:16 +0100
> Conor Dooley <conor@kernel.org> wrote:
> 
> > On Tue, Aug 15, 2023 at 08:29:45PM +0200, Andreas Kemnade wrote:
> > > Convert Neonode infrared touchscreen controller binding to DT schema.
> > > 
> > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > ---
> > >  .../input/touchscreen/neonode,zforce.yaml     | 67 +++++++++++++++++++
> > >  .../bindings/input/touchscreen/zforce_ts.txt  | 34 ----------
> > >  2 files changed, 67 insertions(+), 34 deletions(-)
> > >  create mode 100644 Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
> > >  delete mode 100644 Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt
> > > 
> > > diff --git a/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml b/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
> > > new file mode 100644
> > > index 000000000000..1c45adb2407a
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/input/touchscreen/neonode,zforce.yaml
> > > @@ -0,0 +1,67 @@
> > > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> > > +%YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/input/touchscreen/neonode,zforce.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: Neonode infrared touchscreen controller
> > > +
> > > +maintainers:
> > > +  - Heiko Stuebner <heiko.stuebner@bqreaders.com>  
> > 
> > It;d be good to CC the person you're volunteering! I've done so.
> > 
> well, apparently my get_maintainer.pl | confirm_and_add_addresses | git send-email
> script did not run in the kernel checkout I applied the patch to, so it did
> not catch that address. Sorry.

> BTW: What is common practice for the maintainer address
> in the binding in conversions? Here I looked at the commits of the plaintext binding.

Yeah, that seems reasonable to me.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 2/4] dt-bindings: touchscreen: neonode,zforce: Use standard properties
  2023-08-15 18:29 ` [PATCH 2/4] dt-bindings: touchscreen: neonode,zforce: Use standard properties Andreas Kemnade
@ 2023-08-21 19:35   ` Rob Herring
  0 siblings, 0 replies; 10+ messages in thread
From: Rob Herring @ 2023-08-21 19:35 UTC (permalink / raw)
  To: Andreas Kemnade
  Cc: u.kleine-koenig, dmitry.torokhov, krzysztof.kozlowski+dt,
	Jonathan.Cameron, linux-arm-kernel, festevam, linus.walleij,
	linux-input, linux-kernel, s.hauer, robh+dt, kernel, linux-imx,
	devicetree, conor+dt, shawnguo, rydberg


On Tue, 15 Aug 2023 20:29:46 +0200, Andreas Kemnade wrote:
> Enable touchscreen orientation to be specified by using standard
> properties.
> 
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> ---
>  .../bindings/input/touchscreen/neonode,zforce.yaml  | 13 +++++++++----
>  1 file changed, 9 insertions(+), 4 deletions(-)
> 

Reviewed-by: Rob Herring <robh@kernel.org>


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2023-08-21 19:35 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-15 18:29 [PATCH 0/4] Input: zforce_ts: standard properties Andreas Kemnade
2023-08-15 18:29 ` [PATCH 1/4] dt-bindings: touchscreen: convert neonode,zforce to json-schema Andreas Kemnade
2023-08-16 14:52   ` Conor Dooley
2023-08-16 17:18     ` Heiko Stübner
2023-08-16 17:20     ` Andreas Kemnade
2023-08-16 17:55       ` Conor Dooley
2023-08-15 18:29 ` [PATCH 2/4] dt-bindings: touchscreen: neonode,zforce: Use standard properties Andreas Kemnade
2023-08-21 19:35   ` Rob Herring
2023-08-15 18:29 ` [PATCH 3/4] Input: zforce_ts: Accept standard touchscreen properties Andreas Kemnade
2023-08-15 18:29 ` [PATCH 4/4] ARM: dts: imx6sl-tolino-shine2hd: fix touchscreen rotation Andreas Kemnade

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).