linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/3] Add device tree support for Goodix GT9xx series touchscreen controller
@ 2015-01-18 14:02 Aleksei Mamlin
       [not found] ` <1421589740-12132-1-git-send-email-mamlinav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Aleksei Mamlin @ 2015-01-18 14:02 UTC (permalink / raw)
  To: linux-input; +Cc: devicetree, Aleksei Mamlin

This patch set adds device tree support and binding information for Goodix GT9xx series touchscreen controller.
Support was tested on Wexler Tab 7200 tablet pc and also should work on other devices.

Changes since v1:
  Added Kconfig entry, which enable CONFIG_OF

Aleksei Mamlin (3):
  input: goodix: Add device tree support
  dt-bindings: Add vendor-prefix for Goodix
  input: goodix: Add bindings documentation

 .../bindings/input/touchscreen/gt9xx.txt           | 23 ++++++++++++++++++++++
 .../devicetree/bindings/vendor-prefixes.txt        |  1 +
 drivers/input/touchscreen/Kconfig                  |  2 +-
 drivers/input/touchscreen/goodix.c                 | 10 ++++++++++
 4 files changed, 35 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/devicetree/bindings/input/touchscreen/gt9xx.txt

-- 
2.0.5


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

* [PATCH v2 1/3] input: goodix: Add device tree support
       [not found] ` <1421589740-12132-1-git-send-email-mamlinav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2015-01-18 14:04   ` Aleksei Mamlin
       [not found]     ` <1421589870-14232-1-git-send-email-mamlinav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  0 siblings, 1 reply; 5+ messages in thread
From: Aleksei Mamlin @ 2015-01-18 14:04 UTC (permalink / raw)
  To: linux-input-u79uwXL29TY76Z2rM5mHXA
  Cc: devicetree-u79uwXL29TY76Z2rM5mHXA, Aleksei Mamlin

Signed-off-by: Aleksei Mamlin <mamlinav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
---
 drivers/input/touchscreen/Kconfig  |  2 +-
 drivers/input/touchscreen/goodix.c | 10 ++++++++++
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/drivers/input/touchscreen/Kconfig b/drivers/input/touchscreen/Kconfig
index 5891752..c4a79b7 100644
--- a/drivers/input/touchscreen/Kconfig
+++ b/drivers/input/touchscreen/Kconfig
@@ -297,7 +297,7 @@ config TOUCHSCREEN_FUJITSU
 
 config TOUCHSCREEN_GOODIX
 	tristate "Goodix I2C touchscreen"
-	depends on I2C && ACPI
+	depends on I2C && (ACPI || OF)
 	help
 	  Say Y here if you have the Goodix touchscreen (such as one
 	  installed in Onda v975w tablets) connected to your
diff --git a/drivers/input/touchscreen/goodix.c b/drivers/input/touchscreen/goodix.c
index ca19668..603d2ae 100644
--- a/drivers/input/touchscreen/goodix.c
+++ b/drivers/input/touchscreen/goodix.c
@@ -23,6 +23,7 @@
 #include <linux/irq.h>
 #include <linux/interrupt.h>
 #include <linux/slab.h>
+#include <linux/of.h>
 #include <asm/unaligned.h>
 
 struct goodix_ts_data {
@@ -378,6 +379,14 @@ static const struct acpi_device_id goodix_acpi_match[] = {
 };
 MODULE_DEVICE_TABLE(acpi, goodix_acpi_match);
 
+#ifdef CONFIG_OF
+static struct of_device_id goodix_of_match[] = {
+	{ .compatible = "goodix,gt9xx" },
+	{ }
+};
+MODULE_DEVICE_TABLE(of, goodix_of_match);
+#endif
+
 static struct i2c_driver goodix_ts_driver = {
 	.probe = goodix_ts_probe,
 	.id_table = goodix_ts_id,
@@ -385,6 +394,7 @@ static struct i2c_driver goodix_ts_driver = {
 		.name = "Goodix-TS",
 		.owner = THIS_MODULE,
 		.acpi_match_table = goodix_acpi_match,
+		.of_match_table = of_match_ptr(goodix_of_match),
 	},
 };
 module_i2c_driver(goodix_ts_driver);
-- 
2.0.5

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* [PATCH v2 2/3] dt-bindings: Add vendor-prefix for Goodix
  2015-01-18 14:02 [PATCH v2 0/3] Add device tree support for Goodix GT9xx series touchscreen controller Aleksei Mamlin
       [not found] ` <1421589740-12132-1-git-send-email-mamlinav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2015-01-18 14:05 ` Aleksei Mamlin
  2015-01-18 14:05 ` [PATCH v2 3/3] input: goodix: Add bindings documentation Aleksei Mamlin
  2 siblings, 0 replies; 5+ messages in thread
From: Aleksei Mamlin @ 2015-01-18 14:05 UTC (permalink / raw)
  To: linux-input; +Cc: devicetree, Aleksei Mamlin

Signed-off-by: Aleksei Mamlin <mamlinav@gmail.com>
---
 Documentation/devicetree/bindings/vendor-prefixes.txt | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index b1df0ad..72136f1 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -64,6 +64,7 @@ gef	GE Fanuc Intelligent Platforms Embedded Systems, Inc.
 geniatech	Geniatech, Inc.
 globalscale	Globalscale Technologies, Inc.
 gmt	Global Mixed-mode Technology, Inc.
+goodix	Shenzhen Huiding Technology Co. Ltd.
 google	Google, Inc.
 gumstix	Gumstix, Inc.
 gw	Gateworks Corporation
-- 
2.0.5


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

* [PATCH v2 3/3] input: goodix: Add bindings documentation
  2015-01-18 14:02 [PATCH v2 0/3] Add device tree support for Goodix GT9xx series touchscreen controller Aleksei Mamlin
       [not found] ` <1421589740-12132-1-git-send-email-mamlinav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2015-01-18 14:05 ` [PATCH v2 2/3] dt-bindings: Add vendor-prefix for Goodix Aleksei Mamlin
@ 2015-01-18 14:05 ` Aleksei Mamlin
  2 siblings, 0 replies; 5+ messages in thread
From: Aleksei Mamlin @ 2015-01-18 14:05 UTC (permalink / raw)
  To: linux-input; +Cc: devicetree, Aleksei Mamlin

Signed-off-by: Aleksei Mamlin <mamlinav@gmail.com>
---
 .../bindings/input/touchscreen/gt9xx.txt           | 23 ++++++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/input/touchscreen/gt9xx.txt

diff --git a/Documentation/devicetree/bindings/input/touchscreen/gt9xx.txt b/Documentation/devicetree/bindings/input/touchscreen/gt9xx.txt
new file mode 100644
index 0000000..96c17f0
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/touchscreen/gt9xx.txt
@@ -0,0 +1,23 @@
+Device tree bindings for Goodix GT9xx series touchscreen controller
+
+Required properties:
+
+ - compatible		: Should be "goodix,gt9xx"
+ - reg			: I2C address of the chip
+ - interrupt-parent 	: Interrupt controller to which the chip is connected
+ - interrupts		: Interrupt to which the chip is connected
+
+Example:
+
+	i2c@00000000 {
+		/* ... */
+
+		gt9xx@5d {
+			compatible = "goodix,gt9xx";
+			reg = <0x5d>;
+			interrupt-parent = <&gpio>;
+			interrupts = <0 2>;
+		};
+
+		/* ... */
+	};
-- 
2.0.5


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

* Re: [PATCH v2 1/3] input: goodix: Add device tree support
       [not found]     ` <1421589870-14232-1-git-send-email-mamlinav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2015-01-19  9:48       ` Bastien Nocera
  0 siblings, 0 replies; 5+ messages in thread
From: Bastien Nocera @ 2015-01-19  9:48 UTC (permalink / raw)
  To: Aleksei Mamlin
  Cc: linux-input-u79uwXL29TY76Z2rM5mHXA,
	devicetree-u79uwXL29TY76Z2rM5mHXA

On Sun, 2015-01-18 at 17:04 +0300, Aleksei Mamlin wrote:
> Signed-off-by: Aleksei Mamlin <mamlinav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> ---
>  drivers/input/touchscreen/Kconfig  |  2 +-
>  drivers/input/touchscreen/goodix.c | 10 ++++++++++
>  2 files changed, 11 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/input/touchscreen/Kconfig b/drivers/input/touchscreen/Kconfig
> index 5891752..c4a79b7 100644
> --- a/drivers/input/touchscreen/Kconfig
> +++ b/drivers/input/touchscreen/Kconfig
> @@ -297,7 +297,7 @@ config TOUCHSCREEN_FUJITSU
>  
>  config TOUCHSCREEN_GOODIX
>  	tristate "Goodix I2C touchscreen"
> -	depends on I2C && ACPI
> +	depends on I2C && (ACPI || OF)

This can't be ACPI or OF. If ACPI is disabled, the goodix_acpi_match
structure is still defined, not ifdef'ed like the OF code you're adding.

>  	help
>  	  Say Y here if you have the Goodix touchscreen (such as one
>  	  installed in Onda v975w tablets) connected to your
> diff --git a/drivers/input/touchscreen/goodix.c b/drivers/input/touchscreen/goodix.c
> index ca19668..603d2ae 100644
> --- a/drivers/input/touchscreen/goodix.c
> +++ b/drivers/input/touchscreen/goodix.c
> @@ -23,6 +23,7 @@
>  #include <linux/irq.h>
>  #include <linux/interrupt.h>
>  #include <linux/slab.h>
> +#include <linux/of.h>
>  #include <asm/unaligned.h>
>  
>  struct goodix_ts_data {
> @@ -378,6 +379,14 @@ static const struct acpi_device_id goodix_acpi_match[] = {
>  };
>  MODULE_DEVICE_TABLE(acpi, goodix_acpi_match);
>  
> +#ifdef CONFIG_OF
> +static struct of_device_id goodix_of_match[] = {
> +	{ .compatible = "goodix,gt9xx" },
> +	{ }
> +};
> +MODULE_DEVICE_TABLE(of, goodix_of_match);
> +#endif
> +
>  static struct i2c_driver goodix_ts_driver = {
>  	.probe = goodix_ts_probe,
>  	.id_table = goodix_ts_id,
> @@ -385,6 +394,7 @@ static struct i2c_driver goodix_ts_driver = {
>  		.name = "Goodix-TS",
>  		.owner = THIS_MODULE,
>  		.acpi_match_table = goodix_acpi_match,
> +		.of_match_table = of_match_ptr(goodix_of_match),
>  	},
>  };
>  module_i2c_driver(goodix_ts_driver);


--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

end of thread, other threads:[~2015-01-19  9:48 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-18 14:02 [PATCH v2 0/3] Add device tree support for Goodix GT9xx series touchscreen controller Aleksei Mamlin
     [not found] ` <1421589740-12132-1-git-send-email-mamlinav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-01-18 14:04   ` [PATCH v2 1/3] input: goodix: Add device tree support Aleksei Mamlin
     [not found]     ` <1421589870-14232-1-git-send-email-mamlinav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-01-19  9:48       ` Bastien Nocera
2015-01-18 14:05 ` [PATCH v2 2/3] dt-bindings: Add vendor-prefix for Goodix Aleksei Mamlin
2015-01-18 14:05 ` [PATCH v2 3/3] input: goodix: Add bindings documentation Aleksei Mamlin

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).