Skip to contentSkip to conversation

Input: atmel_mxt_ts - add missing compatible strings to OF device table

PATCH In review Javier Martinez Canillas 5 participants 9 messages Apr 10, 2018 – May 2, 2018

Subsystems (5)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Input: atmel_mxt_ts - add missing compatible strings to OF device table

Commit af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF") fixed how the I2C core reports the module alias when devices are registered via OF.

But the atmel_mxt_ts driver only has an "atmel,maxtouch" compatible in its OF device ID table, so if a Device Tree is using a different one, autoload won't be working for the module (the matching works because the I2C device ID table is used as a fallback).

So add compatible strings for each of the entries in the I2C device table.

Fixes af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF")

---

 Documentation/devicetree/bindings/input/atmel,maxtouch.txt | 6 +++++-
 drivers/input/touchscreen/atmel_mxt_ts.c                   | 4 ++++
 2 files changed, 9 insertions(+), 1 deletion(-)
Documentation/devicetree/bindings/input/atmel,maxtouch.txt +5 -1
index 23e3abc3fdef..cd43fb8bc2ce 100644
@@ -1,8 +1,12 @@
 Atmel maXTouch touchscreen/touchpad
 
 Required properties:
-- compatible:
+- compatible: Must be one of the following
+    atmel,qt602240_ts
+    atmel,atmel_mxt_ts
+    atmel,atmel_mxt_tp
     atmel,maxtouch
+    atmel,mXT224
 
 - reg: The I2C address of the device
 
drivers/input/touchscreen/atmel_mxt_ts.c +4 -0
index 7659bc48f1db..e8ef83f168d6 100644
@@ -3238,7 +3238,11 @@ static int __maybe_unused mxt_resume(struct device *dev)
 static SIMPLE_DEV_PM_OPS(mxt_pm_ops, mxt_suspend, mxt_resume);
 
 static const struct of_device_id mxt_of_match[] = {
+	{ .compatible = "atmel,qt602240_ts", },
+	{ .compatible = "atmel,atmel_mxt_ts", },
+	{ .compatible = "atmel,atmel_mxt_tp", },
 	{ .compatible = "atmel,maxtouch", },
+	{ .compatible = "atmel,mXT224", },
 	{},
 };
 MODULE_DEVICE_TABLE(of, mxt_of_match);
Signature · 1 line
2.14.3
Tested-by Enric Balletbo i Serra on v1 1/1
#1 lore raw

Thanks Javier!

2018-04-10 11:53 GMT+02:00 Javier Martinez Canillas <[email protected]>:

Quoted 55 lines

Commit af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF") fixed how the I2C core reports the module alias when devices are registered via OF.

But the atmel_mxt_ts driver only has an "atmel,maxtouch" compatible in its OF device ID table, so if a Device Tree is using a different one, autoload won't be working for the module (the matching works because the I2C device ID table is used as a fallback).

So add compatible strings for each of the entries in the I2C device table.

Fixes af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF")

---

 Documentation/devicetree/bindings/input/atmel,maxtouch.txt | 6 +++++-
 drivers/input/touchscreen/atmel_mxt_ts.c                   | 4 ++++
 2 files changed, 9 insertions(+), 1 deletion(-)
Documentation/devicetree/bindings/input/atmel,maxtouch.txt +5 -1
index 23e3abc3fdef..cd43fb8bc2ce 100644
@@ -1,8 +1,12 @@
 Atmel maXTouch touchscreen/touchpad
 
 Required properties:
-- compatible:
+- compatible: Must be one of the following
+    atmel,qt602240_ts
+    atmel,atmel_mxt_ts
+    atmel,atmel_mxt_tp
     atmel,maxtouch
+    atmel,mXT224
 
 - reg: The I2C address of the device
 
drivers/input/touchscreen/atmel_mxt_ts.c +4 -1
index 7659bc48f1db..e8ef83f168d6 100644
@@ -3238,7 +3238,11 @@ static int __maybe_unused mxt_resume(struct device *dev)
 static SIMPLE_DEV_PM_OPS(mxt_pm_ops, mxt_suspend, mxt_resume);
 
 static const struct of_device_id mxt_of_match[] = {
+       { .compatible = "atmel,qt602240_ts", },
+       { .compatible = "atmel,atmel_mxt_ts", },
+       { .compatible = "atmel,atmel_mxt_tp", },
        { .compatible = "atmel,maxtouch", },
+       { .compatible = "atmel,mXT224", },
        {},
 };
 MODULE_DEVICE_TABLE(of, mxt_of_match);
--
Quoted 2 lines

2.14.3

The Samsung Chromebook Plus is one of the affected devices, with current mainline the module is not autoloaded, this patch fixes the issue.

maintainer Reviewed-by on v1 1/1
#2 lore raw
In reply to Javier Martinez Canillas
Quoted 11 lines · Javier Martinez Canillas

Commit af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF") fixed how the I2C core reports the module alias when devices are registered via OF.

But the atmel_mxt_ts driver only has an "atmel,maxtouch" compatible in its OF device ID table, so if a Device Tree is using a different one, autoload won't be working for the module (the matching works because the I2C device ID table is used as a fallback).

So add compatible strings for each of the entries in the I2C device table.

Quoted 8 lines
Fixes af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF")

---

 Documentation/devicetree/bindings/input/atmel,maxtouch.txt | 6 +++++-
 drivers/input/touchscreen/atmel_mxt_ts.c                   | 4 ++++
 2 files changed, 9 insertions(+), 1 deletion(-)
maintainer
#3 lore raw
In reply to Javier Martinez Canillas
Quoted 25 lines · Javier Martinez Canillas

Commit af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF") fixed how the I2C core reports the module alias when devices are registered via OF.

But the atmel_mxt_ts driver only has an "atmel,maxtouch" compatible in its OF device ID table, so if a Device Tree is using a different one, autoload won't be working for the module (the matching works because the I2C device ID table is used as a fallback).

So add compatible strings for each of the entries in the I2C device table.

Fixes af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF")

---

 Documentation/devicetree/bindings/input/atmel,maxtouch.txt | 6 +++++-
 drivers/input/touchscreen/atmel_mxt_ts.c                   | 4 ++++
 2 files changed, 9 insertions(+), 1 deletion(-)
Documentation/devicetree/bindings/input/atmel,maxtouch.txt +0 -0
index 23e3abc3fdef..cd43fb8bc2ce 100644

Documentation/devicetree/bindings/input/atmel,maxtouch.txt line 9

Quoted 10 lines
Documentation/devicetree/bindings/input/atmel,maxtouch.txt +5 -1
@@ -1,8 +1,12 @@
 Atmel maXTouch touchscreen/touchpad
 
 Required properties:
-- compatible:
+- compatible: Must be one of the following
+    atmel,qt602240_ts
+    atmel,atmel_mxt_ts
+    atmel,atmel_mxt_tp
     atmel,maxtouch
+    atmel,mXT224

I do not think we should document ad-hoc compatible strings that were introduced by various vendors as the documented ones, so I'd rather dropped this chunk and leave only "atmel,maxtouch" as compatible that everyone should be using.

The changes to the driver to support the existing DTSes can of course be applied.

Rob, any objections?

Quoted 22 lines
Documentation/devicetree/bindings/input/atmel,maxtouch.txt +0 -0
 - reg: The I2C address of the device
 
drivers/input/touchscreen/atmel_mxt_ts.c +4 -0
index 7659bc48f1db..e8ef83f168d6 100644
@@ -3238,7 +3238,11 @@ static int __maybe_unused mxt_resume(struct device *dev)
 static SIMPLE_DEV_PM_OPS(mxt_pm_ops, mxt_suspend, mxt_resume);
 
 static const struct of_device_id mxt_of_match[] = {
+	{ .compatible = "atmel,qt602240_ts", },
+	{ .compatible = "atmel,atmel_mxt_ts", },
+	{ .compatible = "atmel,atmel_mxt_tp", },
 	{ .compatible = "atmel,maxtouch", },
+	{ .compatible = "atmel,mXT224", },
 	{},
 };
 MODULE_DEVICE_TABLE(of, mxt_of_match);
Signature · 1 line
2.14.3

Thanks.

Signature · 1 line
Dmitry
#4 lore raw
Quoted 42 lines · Dmitry Torokhov
Quoted 25 lines · Javier Martinez Canillas

Commit af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF") fixed how the I2C core reports the module alias when devices are registered via OF.

But the atmel_mxt_ts driver only has an "atmel,maxtouch" compatible in its OF device ID table, so if a Device Tree is using a different one, autoload won't be working for the module (the matching works because the I2C device ID table is used as a fallback).

So add compatible strings for each of the entries in the I2C device table.

Fixes af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF")

---

 Documentation/devicetree/bindings/input/atmel,maxtouch.txt | 6 +++++-
 drivers/input/touchscreen/atmel_mxt_ts.c                   | 4 ++++
 2 files changed, 9 insertions(+), 1 deletion(-)
Documentation/devicetree/bindings/input/atmel,maxtouch.txt +0 -0
index 23e3abc3fdef..cd43fb8bc2ce 100644

Documentation/devicetree/bindings/input/atmel,maxtouch.txt line 9

Quoted 10 lines
Documentation/devicetree/bindings/input/atmel,maxtouch.txt +5 -1
@@ -1,8 +1,12 @@
 Atmel maXTouch touchscreen/touchpad
 
 Required properties:
-- compatible:
+- compatible: Must be one of the following
+    atmel,qt602240_ts
+    atmel,atmel_mxt_ts
+    atmel,atmel_mxt_tp
     atmel,maxtouch
+    atmel,mXT224

I do not think we should document ad-hoc compatible strings that were introduced by various vendors as the documented ones, so I'd rather dropped this chunk and leave only "atmel,maxtouch" as compatible that everyone should be using.

Quoted 4 lines

The changes to the driver to support the existing DTSes can of course be applied.

Rob, any objections?

I'd prefer we list them in the binding as deprecated. Then we document somewhere besides this thread to not use them.

And there are 3 dts changes needed as well:

$ git grep atmel,mXT224
$ git grep atmel,qt6
$ git grep atmel,atmel_mxt
arch/arm/boot/dts/at91-sama5d4ek.dts:
 compatible = "atmel,atmel_mxt_ts";
arch/arm64/boot/dts/rockchip/rk3399-gru-kevin.dts:
compatible = "atmel,atmel_mxt_tp";
arch/arm64/boot/dts/rockchip/rk3399-gru-kevin.dts:
compatible = "atmel,atmel_mxt_ts";

Rob

maintainer
#5 lore raw

PATCH v2 1/1 Input: atmel_mxt_ts - add missing compatible strings to OF device table

From: Javier Martinez Canillas <[email protected]>

Commit af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF") fixed how the I2C core reports the module alias when devices are registered via OF.

But the atmel_mxt_ts driver only has an "atmel,maxtouch" compatible in its OF device ID table, so if a Device Tree is using a different one, autoload won't be working for the module (the matching works because the I2C device ID table is used as a fallback).

So add compatible strings for each of the entries in the I2C device table.

Fixes af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF")
[dtor: document which compatibles are deprecated and should not be used]
---
 .../devicetree/bindings/input/atmel,maxtouch.txt   |    7 +++++++
 drivers/input/touchscreen/atmel_mxt_ts.c           |    5 +++++
 2 files changed, 12 insertions(+)
Documentation/devicetree/bindings/input/atmel,maxtouch.txt +7 -0
index 23e3abc3fdef0..c88919480d373 100644
@@ -4,6 +4,13 @@ Required properties:
 - compatible:
     atmel,maxtouch
 
+    The following compatibles have been used in various products but are
+    deprecated:
+	atmel,qt602240_ts
+	atmel,atmel_mxt_ts
+	atmel,atmel_mxt_tp
+	atmel,mXT224
+
 - reg: The I2C address of the device
 
 - interrupts: The sink for the touchpad's IRQ output
drivers/input/touchscreen/atmel_mxt_ts.c +5 -0
index 5f41c1860f403..779dbfcc0eded 100644
@@ -3297,6 +3297,11 @@ static SIMPLE_DEV_PM_OPS(mxt_pm_ops, mxt_suspend, mxt_resume);
 
 static const struct of_device_id mxt_of_match[] = {
 	{ .compatible = "atmel,maxtouch", },
+	/* Compatibles listed below are deprecated */
+	{ .compatible = "atmel,qt602240_ts", },
+	{ .compatible = "atmel,atmel_mxt_ts", },
+	{ .compatible = "atmel,atmel_mxt_tp", },
+	{ .compatible = "atmel,mXT224", },
 	{},
 };
 MODULE_DEVICE_TABLE(of, mxt_of_match);
Reviewed-by on v2 1/1
#6 lore raw
Quoted 19 lines · Dmitry Torokhov

From: Javier Martinez Canillas <[email protected]>

Commit af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF") fixed how the I2C core reports the module alias when devices are registered via OF.

But the atmel_mxt_ts driver only has an "atmel,maxtouch" compatible in its OF device ID table, so if a Device Tree is using a different one, autoload won't be working for the module (the matching works because the I2C device ID table is used as a fallback).

So add compatible strings for each of the entries in the I2C device table.

Fixes af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF")
[dtor: document which compatibles are deprecated and should not be used]
Quoted 4 lines
---
 .../devicetree/bindings/input/atmel,maxtouch.txt   |    7 +++++++
 drivers/input/touchscreen/atmel_mxt_ts.c           |    5 +++++
 2 files changed, 12 insertions(+)

Someone is going to make the dts updates, right?

maintainer
#7 lore raw
Quoted 26 lines · Rob Herring
Quoted 19 lines · Dmitry Torokhov

From: Javier Martinez Canillas <[email protected]>

Commit af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF") fixed how the I2C core reports the module alias when devices are registered via OF.

But the atmel_mxt_ts driver only has an "atmel,maxtouch" compatible in its OF device ID table, so if a Device Tree is using a different one, autoload won't be working for the module (the matching works because the I2C device ID table is used as a fallback).

So add compatible strings for each of the entries in the I2C device table.

Fixes af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF")
[dtor: document which compatibles are deprecated and should not be used]
Quoted 4 lines
---
 .../devicetree/bindings/input/atmel,maxtouch.txt   |    7 +++++++
 drivers/input/touchscreen/atmel_mxt_ts.c           |    5 +++++
 2 files changed, 12 insertions(+)
Quoted 3 lines

Someone is going to make the dts updates, right?

I sent out 2 patches...

Signature · 1 line
Dmitry
#8 lore raw
In reply to Dmitry Torokhov

Hi Dmitry,

Quoted 11 lines · Dmitry Torokhov

From: Javier Martinez Canillas <[email protected]>

Commit af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF") fixed how the I2C core reports the module alias when devices are registered via OF.

But the atmel_mxt_ts driver only has an "atmel,maxtouch" compatible in its OF device ID table, so if a Device Tree is using a different one, autoload won't be working for the module (the matching works because the I2C device ID table is used as a fallback).

Quoted 8 lines

So add compatible strings for each of the entries in the I2C device table.

Fixes af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF")
[dtor: document which compatibles are deprecated and should not be used]

Thanks for taking care of this. Yes, I should had added as deprecated indeed.

Best regards,
Javier