linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/3] input: touchscreen: ar1021_i2c: add support for AR1020
@ 2017-04-11 10:27 Martin Kepplinger
  2017-04-11 10:27 ` [PATCH 2/3] Documentation: devicetree: bindings: add bindings doc for ar1021 driver Martin Kepplinger
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Martin Kepplinger @ 2017-04-11 10:27 UTC (permalink / raw)
  To: dmitry.torokhov, christian.gmeiner
  Cc: linux, linux-input, linux-kernel, devicetree, Martin Kepplinger

ar1021_i2c simply also supports the ar1020 device we use. This is tested.
They also share the same datasheet:

   http://ww1.microchip.com/downloads/en/DeviceDoc/40001393C.pdf

We differentiate not only to make it obvious that we support both devices,
but also to be able to implement the few model specific things in the
future.

Signed-off-by: Martin Kepplinger <martin.kepplinger@ginzinger.com>
---
 drivers/input/touchscreen/Kconfig      |  4 ++--
 drivers/input/touchscreen/ar1021_i2c.c | 13 ++++++++++---
 2 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/drivers/input/touchscreen/Kconfig b/drivers/input/touchscreen/Kconfig
index 33c62e5..535b91a 100644
--- a/drivers/input/touchscreen/Kconfig
+++ b/drivers/input/touchscreen/Kconfig
@@ -96,8 +96,8 @@ config TOUCHSCREEN_AR1021_I2C
 	tristate "Microchip AR1021 i2c touchscreen"
 	depends on I2C && OF
 	help
-	  Say Y here if you have the Microchip AR1021 touchscreen controller
-	  chip in your system.
+	  Say Y here if you have the Microchip AR1020 or AR1021 touchscreen
+	  controller chip in your system.
 
 	  If unsure, say N.
 
diff --git a/drivers/input/touchscreen/ar1021_i2c.c b/drivers/input/touchscreen/ar1021_i2c.c
index 6562b17..1767257 100644
--- a/drivers/input/touchscreen/ar1021_i2c.c
+++ b/drivers/input/touchscreen/ar1021_i2c.c
@@ -1,5 +1,5 @@
 /*
- * Microchip AR1021 driver for I2C
+ * Microchip AR1020 and AR1021 driver for I2C
  *
  * Author: Christian Gmeiner <christian.gmeiner@gmail.com>
  *
@@ -24,6 +24,11 @@ struct ar1021_i2c {
 	u8 data[AR1021_TOCUH_PKG_SIZE];
 };
 
+enum {
+	ar1021,
+	ar1020,
+};
+
 static irqreturn_t ar1021_i2c_irq(int irq, void *dev_id)
 {
 	struct ar1021_i2c *ar1021 = dev_id;
@@ -151,13 +156,15 @@ static int __maybe_unused ar1021_i2c_resume(struct device *dev)
 static SIMPLE_DEV_PM_OPS(ar1021_i2c_pm, ar1021_i2c_suspend, ar1021_i2c_resume);
 
 static const struct i2c_device_id ar1021_i2c_id[] = {
-	{ "MICROCHIP_AR1021_I2C", 0 },
+	{ "MICROCHIP_AR1021_I2C", ar1021 },
+	{ "MICROCHIP_AR1020_I2C", ar1020 },
 	{ },
 };
 MODULE_DEVICE_TABLE(i2c, ar1021_i2c_id);
 
 static const struct of_device_id ar1021_i2c_of_match[] = {
 	{ .compatible = "microchip,ar1021-i2c", },
+	{ .compatible = "microchip,ar1020-i2c", },
 	{ }
 };
 MODULE_DEVICE_TABLE(of, ar1021_i2c_of_match);
@@ -175,5 +182,5 @@ static struct i2c_driver ar1021_i2c_driver = {
 module_i2c_driver(ar1021_i2c_driver);
 
 MODULE_AUTHOR("Christian Gmeiner <christian.gmeiner@gmail.com>");
-MODULE_DESCRIPTION("Microchip AR1021 I2C Driver");
+MODULE_DESCRIPTION("Microchip AR1020 and AR1021 I2C Driver");
 MODULE_LICENSE("GPL");
-- 
2.1.4

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

* [PATCH 2/3] Documentation: devicetree: bindings: add bindings doc for ar1021 driver
  2017-04-11 10:27 [PATCH 1/3] input: touchscreen: ar1021_i2c: add support for AR1020 Martin Kepplinger
@ 2017-04-11 10:27 ` Martin Kepplinger
  2017-04-13 20:40   ` Rob Herring
  2017-04-11 10:27 ` [PATCH 3/3] input: touchscreen: ar1021_i2c: coding style fixes Martin Kepplinger
  2017-04-12 15:40 ` [PATCH 1/3] input: touchscreen: ar1021_i2c: add support for AR1020 Dmitry Torokhov
  2 siblings, 1 reply; 12+ messages in thread
From: Martin Kepplinger @ 2017-04-11 10:27 UTC (permalink / raw)
  To: dmitry.torokhov, christian.gmeiner
  Cc: linux, linux-input, linux-kernel, devicetree, Martin Kepplinger

Add a simple binding document highlighting the supported devices and
I2C bus address.

Signed-off-by: Martin Kepplinger <martin.kepplinger@ginzinger.com>
---
 .../devicetree/bindings/input/touchscreen/ar1021.txt     | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/input/touchscreen/ar1021.txt

diff --git a/Documentation/devicetree/bindings/input/touchscreen/ar1021.txt b/Documentation/devicetree/bindings/input/touchscreen/ar1021.txt
new file mode 100644
index 0000000..87a8c72
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/touchscreen/ar1021.txt
@@ -0,0 +1,16 @@
+* Microchip AR1020 and AR1021 touchscreen interface (I2C)
+
+Required properties:
+- compatible		: use "microchip,ar1020-i2c" or "microchip,ar1021-i2c"
+- reg			: I2C slave address
+- interrupt-parent	: the phandle for the interrupt controller
+- interrupts		: touch controller interrupt
+
+Example:
+
+	ar1020: ar1020@4d {
+		compatible = "microchip,ar1020-i2c";
+		reg = <0x4d>;
+		interrupt-parent = <&gpio3>;
+		interrupts = <11 IRQ_TYPE_LEVEL_HIGH>;
+	};
-- 
2.1.4

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

* [PATCH 3/3] input: touchscreen: ar1021_i2c: coding style fixes
  2017-04-11 10:27 [PATCH 1/3] input: touchscreen: ar1021_i2c: add support for AR1020 Martin Kepplinger
  2017-04-11 10:27 ` [PATCH 2/3] Documentation: devicetree: bindings: add bindings doc for ar1021 driver Martin Kepplinger
@ 2017-04-11 10:27 ` Martin Kepplinger
  2017-04-12 15:41   ` Dmitry Torokhov
  2017-04-12 15:40 ` [PATCH 1/3] input: touchscreen: ar1021_i2c: add support for AR1020 Dmitry Torokhov
  2 siblings, 1 reply; 12+ messages in thread
From: Martin Kepplinger @ 2017-04-11 10:27 UTC (permalink / raw)
  To: dmitry.torokhov, christian.gmeiner
  Cc: linux, linux-input, linux-kernel, devicetree, Martin Kepplinger

Use the common kernel coding style and corrently align parameters with
open parenthesis.

Signed-off-by: Martin Kepplinger <martin.kepplinger@ginzinger.com>
---
 drivers/input/touchscreen/ar1021_i2c.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/input/touchscreen/ar1021_i2c.c b/drivers/input/touchscreen/ar1021_i2c.c
index 1767257..cac7eeb 100644
--- a/drivers/input/touchscreen/ar1021_i2c.c
+++ b/drivers/input/touchscreen/ar1021_i2c.c
@@ -38,7 +38,7 @@ static irqreturn_t ar1021_i2c_irq(int irq, void *dev_id)
 	int retval;
 
 	retval = i2c_master_recv(ar1021->client,
-				ar1021->data, sizeof(ar1021->data));
+				 ar1021->data, sizeof(ar1021->data));
 	if (retval != sizeof(ar1021->data))
 		goto out;
 
@@ -78,7 +78,7 @@ static void ar1021_i2c_close(struct input_dev *dev)
 }
 
 static int ar1021_i2c_probe(struct i2c_client *client,
-				     const struct i2c_device_id *id)
+			    const struct i2c_device_id *id)
 {
 	struct ar1021_i2c *ar1021;
 	struct input_dev *input;
-- 
2.1.4

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

* Re: [PATCH 1/3] input: touchscreen: ar1021_i2c: add support for AR1020
  2017-04-11 10:27 [PATCH 1/3] input: touchscreen: ar1021_i2c: add support for AR1020 Martin Kepplinger
  2017-04-11 10:27 ` [PATCH 2/3] Documentation: devicetree: bindings: add bindings doc for ar1021 driver Martin Kepplinger
  2017-04-11 10:27 ` [PATCH 3/3] input: touchscreen: ar1021_i2c: coding style fixes Martin Kepplinger
@ 2017-04-12 15:40 ` Dmitry Torokhov
  2017-04-13  6:38   ` Martin Kepplinger
  2 siblings, 1 reply; 12+ messages in thread
From: Dmitry Torokhov @ 2017-04-12 15:40 UTC (permalink / raw)
  To: Martin Kepplinger
  Cc: christian.gmeiner, linux, linux-input, linux-kernel, devicetree

Hi Martin,

On Tue, Apr 11, 2017 at 12:27:57PM +0200, Martin Kepplinger wrote:
> ar1021_i2c simply also supports the ar1020 device we use. This is tested.
> They also share the same datasheet:
> 
>    http://ww1.microchip.com/downloads/en/DeviceDoc/40001393C.pdf
> 
> We differentiate not only to make it obvious that we support both devices,
> but also to be able to implement the few model specific things in the
> future.
> 
> Signed-off-by: Martin Kepplinger <martin.kepplinger@ginzinger.com>
> ---
>  drivers/input/touchscreen/Kconfig      |  4 ++--
>  drivers/input/touchscreen/ar1021_i2c.c | 13 ++++++++++---
>  2 files changed, 12 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/input/touchscreen/Kconfig b/drivers/input/touchscreen/Kconfig
> index 33c62e5..535b91a 100644
> --- a/drivers/input/touchscreen/Kconfig
> +++ b/drivers/input/touchscreen/Kconfig
> @@ -96,8 +96,8 @@ config TOUCHSCREEN_AR1021_I2C
>  	tristate "Microchip AR1021 i2c touchscreen"
>  	depends on I2C && OF
>  	help
> -	  Say Y here if you have the Microchip AR1021 touchscreen controller
> -	  chip in your system.
> +	  Say Y here if you have the Microchip AR1020 or AR1021 touchscreen
> +	  controller chip in your system.
>  
>  	  If unsure, say N.
>  
> diff --git a/drivers/input/touchscreen/ar1021_i2c.c b/drivers/input/touchscreen/ar1021_i2c.c
> index 6562b17..1767257 100644
> --- a/drivers/input/touchscreen/ar1021_i2c.c
> +++ b/drivers/input/touchscreen/ar1021_i2c.c
> @@ -1,5 +1,5 @@
>  /*
> - * Microchip AR1021 driver for I2C
> + * Microchip AR1020 and AR1021 driver for I2C
>   *
>   * Author: Christian Gmeiner <christian.gmeiner@gmail.com>
>   *
> @@ -24,6 +24,11 @@ struct ar1021_i2c {
>  	u8 data[AR1021_TOCUH_PKG_SIZE];
>  };
>  
> +enum {
> +	ar1021,
> +	ar1020,
> +};
> +
>  static irqreturn_t ar1021_i2c_irq(int irq, void *dev_id)
>  {
>  	struct ar1021_i2c *ar1021 = dev_id;
> @@ -151,13 +156,15 @@ static int __maybe_unused ar1021_i2c_resume(struct device *dev)
>  static SIMPLE_DEV_PM_OPS(ar1021_i2c_pm, ar1021_i2c_suspend, ar1021_i2c_resume);
>  
>  static const struct i2c_device_id ar1021_i2c_id[] = {
> -	{ "MICROCHIP_AR1021_I2C", 0 },
> +	{ "MICROCHIP_AR1021_I2C", ar1021 },
> +	{ "MICROCHIP_AR1020_I2C", ar1020 },
>  	{ },
>  };
>  MODULE_DEVICE_TABLE(i2c, ar1021_i2c_id);
>  
>  static const struct of_device_id ar1021_i2c_of_match[] = {
>  	{ .compatible = "microchip,ar1021-i2c", },
> +	{ .compatible = "microchip,ar1020-i2c", },
>  	{ }
>  };
>  MODULE_DEVICE_TABLE(of, ar1021_i2c_of_match);
> @@ -175,5 +182,5 @@ static struct i2c_driver ar1021_i2c_driver = {
>  module_i2c_driver(ar1021_i2c_driver);
>  
>  MODULE_AUTHOR("Christian Gmeiner <christian.gmeiner@gmail.com>");
> -MODULE_DESCRIPTION("Microchip AR1021 I2C Driver");
> +MODULE_DESCRIPTION("Microchip AR1020 and AR1021 I2C Driver");
>  MODULE_LICENSE("GPL");
> -- 
> 2.1.4
> 

I do not see where you handle ar1020 differently from ar1021. If devices
are compatible, you do not need to add a new compatible to the driver,
simply use it in the binding:

	compatible = "microchip,ar1020-i2c", "microchip,ar1021-i2c";

Thanks.

-- 
Dmitry

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

* Re: [PATCH 3/3] input: touchscreen: ar1021_i2c: coding style fixes
  2017-04-11 10:27 ` [PATCH 3/3] input: touchscreen: ar1021_i2c: coding style fixes Martin Kepplinger
@ 2017-04-12 15:41   ` Dmitry Torokhov
  0 siblings, 0 replies; 12+ messages in thread
From: Dmitry Torokhov @ 2017-04-12 15:41 UTC (permalink / raw)
  To: Martin Kepplinger
  Cc: christian.gmeiner, linux, linux-input, linux-kernel, devicetree

On Tue, Apr 11, 2017 at 12:27:59PM +0200, Martin Kepplinger wrote:
> Use the common kernel coding style and corrently align parameters with
> open parenthesis.
> 
> Signed-off-by: Martin Kepplinger <martin.kepplinger@ginzinger.com>

Applied, thank you.

> ---
>  drivers/input/touchscreen/ar1021_i2c.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/input/touchscreen/ar1021_i2c.c b/drivers/input/touchscreen/ar1021_i2c.c
> index 1767257..cac7eeb 100644
> --- a/drivers/input/touchscreen/ar1021_i2c.c
> +++ b/drivers/input/touchscreen/ar1021_i2c.c
> @@ -38,7 +38,7 @@ static irqreturn_t ar1021_i2c_irq(int irq, void *dev_id)
>  	int retval;
>  
>  	retval = i2c_master_recv(ar1021->client,
> -				ar1021->data, sizeof(ar1021->data));
> +				 ar1021->data, sizeof(ar1021->data));
>  	if (retval != sizeof(ar1021->data))
>  		goto out;
>  
> @@ -78,7 +78,7 @@ static void ar1021_i2c_close(struct input_dev *dev)
>  }
>  
>  static int ar1021_i2c_probe(struct i2c_client *client,
> -				     const struct i2c_device_id *id)
> +			    const struct i2c_device_id *id)
>  {
>  	struct ar1021_i2c *ar1021;
>  	struct input_dev *input;
> -- 
> 2.1.4
> 

-- 
Dmitry

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

* Re: [PATCH 1/3] input: touchscreen: ar1021_i2c: add support for AR1020
  2017-04-12 15:40 ` [PATCH 1/3] input: touchscreen: ar1021_i2c: add support for AR1020 Dmitry Torokhov
@ 2017-04-13  6:38   ` Martin Kepplinger
  2017-04-13 20:35     ` Rob Herring
  0 siblings, 1 reply; 12+ messages in thread
From: Martin Kepplinger @ 2017-04-13  6:38 UTC (permalink / raw)
  To: Dmitry Torokhov
  Cc: christian.gmeiner, linux, linux-input, linux-kernel, devicetree



On 2017-04-12 17:40, Dmitry Torokhov wrote:
> Hi Martin,
> 
> On Tue, Apr 11, 2017 at 12:27:57PM +0200, Martin Kepplinger wrote:
>> ar1021_i2c simply also supports the ar1020 device we use. This is tested.
>> They also share the same datasheet:
>>
>>    http://ww1.microchip.com/downloads/en/DeviceDoc/40001393C.pdf
>>
>> We differentiate not only to make it obvious that we support both devices,
>> but also to be able to implement the few model specific things in the
>> future.
>>
>> Signed-off-by: Martin Kepplinger <martin.kepplinger@ginzinger.com>
>> ---
>>  drivers/input/touchscreen/Kconfig      |  4 ++--
>>  drivers/input/touchscreen/ar1021_i2c.c | 13 ++++++++++---
>>  2 files changed, 12 insertions(+), 5 deletions(-)
>>
>> diff --git a/drivers/input/touchscreen/Kconfig b/drivers/input/touchscreen/Kconfig
>> index 33c62e5..535b91a 100644
>> --- a/drivers/input/touchscreen/Kconfig
>> +++ b/drivers/input/touchscreen/Kconfig
>> @@ -96,8 +96,8 @@ config TOUCHSCREEN_AR1021_I2C
>>  	tristate "Microchip AR1021 i2c touchscreen"
>>  	depends on I2C && OF
>>  	help
>> -	  Say Y here if you have the Microchip AR1021 touchscreen controller
>> -	  chip in your system.
>> +	  Say Y here if you have the Microchip AR1020 or AR1021 touchscreen
>> +	  controller chip in your system.
>>  
>>  	  If unsure, say N.
>>  
>> diff --git a/drivers/input/touchscreen/ar1021_i2c.c b/drivers/input/touchscreen/ar1021_i2c.c
>> index 6562b17..1767257 100644
>> --- a/drivers/input/touchscreen/ar1021_i2c.c
>> +++ b/drivers/input/touchscreen/ar1021_i2c.c
>> @@ -1,5 +1,5 @@
>>  /*
>> - * Microchip AR1021 driver for I2C
>> + * Microchip AR1020 and AR1021 driver for I2C
>>   *
>>   * Author: Christian Gmeiner <christian.gmeiner@gmail.com>
>>   *
>> @@ -24,6 +24,11 @@ struct ar1021_i2c {
>>  	u8 data[AR1021_TOCUH_PKG_SIZE];
>>  };
>>  
>> +enum {
>> +	ar1021,
>> +	ar1020,
>> +};
>> +
>>  static irqreturn_t ar1021_i2c_irq(int irq, void *dev_id)
>>  {
>>  	struct ar1021_i2c *ar1021 = dev_id;
>> @@ -151,13 +156,15 @@ static int __maybe_unused ar1021_i2c_resume(struct device *dev)
>>  static SIMPLE_DEV_PM_OPS(ar1021_i2c_pm, ar1021_i2c_suspend, ar1021_i2c_resume);
>>  
>>  static const struct i2c_device_id ar1021_i2c_id[] = {
>> -	{ "MICROCHIP_AR1021_I2C", 0 },
>> +	{ "MICROCHIP_AR1021_I2C", ar1021 },
>> +	{ "MICROCHIP_AR1020_I2C", ar1020 },
>>  	{ },
>>  };
>>  MODULE_DEVICE_TABLE(i2c, ar1021_i2c_id);
>>  
>>  static const struct of_device_id ar1021_i2c_of_match[] = {
>>  	{ .compatible = "microchip,ar1021-i2c", },
>> +	{ .compatible = "microchip,ar1020-i2c", },
>>  	{ }
>>  };
>>  MODULE_DEVICE_TABLE(of, ar1021_i2c_of_match);
>> @@ -175,5 +182,5 @@ static struct i2c_driver ar1021_i2c_driver = {
>>  module_i2c_driver(ar1021_i2c_driver);
>>  
>>  MODULE_AUTHOR("Christian Gmeiner <christian.gmeiner@gmail.com>");
>> -MODULE_DESCRIPTION("Microchip AR1021 I2C Driver");
>> +MODULE_DESCRIPTION("Microchip AR1020 and AR1021 I2C Driver");
>>  MODULE_LICENSE("GPL");
>> -- 
>> 2.1.4
>>
> 
> I do not see where you handle ar1020 differently from ar1021. If devices
> are compatible, you do not need to add a new compatible to the driver,
> simply use it in the binding:
> 
> 	compatible = "microchip,ar1020-i2c", "microchip,ar1021-i2c";
> 
> Thanks.
> 

Why would you use "microchip,ar1020-i2c" in the dts if it's not
available? people don't obviously see, by grepping or reading,
that they have a compatible driver. ... or did I get you wrong?

I don't handle anything differently now. Factory reset has to be done
differntly though, as one example. So it'd be nice to have the option
to add data.

thanks
                          martin

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

* Re: [PATCH 1/3] input: touchscreen: ar1021_i2c: add support for AR1020
  2017-04-13  6:38   ` Martin Kepplinger
@ 2017-04-13 20:35     ` Rob Herring
  2017-04-14  6:02       ` [PATCH v2] input: touchscreen: ar1021_i2c: highlight " Martin Kepplinger
  0 siblings, 1 reply; 12+ messages in thread
From: Rob Herring @ 2017-04-13 20:35 UTC (permalink / raw)
  To: Martin Kepplinger
  Cc: Dmitry Torokhov, christian.gmeiner, linux, linux-input,
	linux-kernel, devicetree

On Thu, Apr 13, 2017 at 08:38:39AM +0200, Martin Kepplinger wrote:
> 
> 
> On 2017-04-12 17:40, Dmitry Torokhov wrote:
> > Hi Martin,
> > 
> > On Tue, Apr 11, 2017 at 12:27:57PM +0200, Martin Kepplinger wrote:
> >> ar1021_i2c simply also supports the ar1020 device we use. This is tested.
> >> They also share the same datasheet:
> >>
> >>    http://ww1.microchip.com/downloads/en/DeviceDoc/40001393C.pdf
> >>
> >> We differentiate not only to make it obvious that we support both devices,
> >> but also to be able to implement the few model specific things in the
> >> future.

[...]

> > 
> > I do not see where you handle ar1020 differently from ar1021. If devices
> > are compatible, you do not need to add a new compatible to the driver,
> > simply use it in the binding:
> > 
> > 	compatible = "microchip,ar1020-i2c", "microchip,ar1021-i2c";
> > 
> > Thanks.
> > 
> 
> Why would you use "microchip,ar1020-i2c" in the dts if it's not
> available? people don't obviously see, by grepping or reading,
> that they have a compatible driver. ... or did I get you wrong?
> 
> I don't handle anything differently now. Factory reset has to be done
> differntly though, as one example. So it'd be nice to have the option
> to add data.

Having both lets you use the current driver now and you can match on the 
more specific compatible string when and if you need to. That's exactly 
why we have multiple compatibles. I could imagine the driver never 
supports factory reset. Add both to comments or kconfig help if you want 
to make it clear that both devices are supported.

Rob

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

* Re: [PATCH 2/3] Documentation: devicetree: bindings: add bindings doc for ar1021 driver
  2017-04-11 10:27 ` [PATCH 2/3] Documentation: devicetree: bindings: add bindings doc for ar1021 driver Martin Kepplinger
@ 2017-04-13 20:40   ` Rob Herring
  2017-04-14  6:11     ` [PATCH v2] dt-bindings: input: add bindings document for ar1021_i2c driver Martin Kepplinger
  0 siblings, 1 reply; 12+ messages in thread
From: Rob Herring @ 2017-04-13 20:40 UTC (permalink / raw)
  To: Martin Kepplinger
  Cc: dmitry.torokhov, christian.gmeiner, linux, linux-input,
	linux-kernel, devicetree

On Tue, Apr 11, 2017 at 12:27:58PM +0200, Martin Kepplinger wrote:
> Add a simple binding document highlighting the supported devices and
> I2C bus address.

"dt-bindings: input: ..." for the subject please.

> 
> Signed-off-by: Martin Kepplinger <martin.kepplinger@ginzinger.com>
> ---
>  .../devicetree/bindings/input/touchscreen/ar1021.txt     | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/input/touchscreen/ar1021.txt
> 
> diff --git a/Documentation/devicetree/bindings/input/touchscreen/ar1021.txt b/Documentation/devicetree/bindings/input/touchscreen/ar1021.txt
> new file mode 100644
> index 0000000..87a8c72
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/input/touchscreen/ar1021.txt
> @@ -0,0 +1,16 @@
> +* Microchip AR1020 and AR1021 touchscreen interface (I2C)
> +
> +Required properties:
> +- compatible		: use "microchip,ar1020-i2c" or "microchip,ar1021-i2c"
> +- reg			: I2C slave address
> +- interrupt-parent	: the phandle for the interrupt controller
> +- interrupts		: touch controller interrupt
> +
> +Example:
> +
> +	ar1020: ar1020@4d {

touchscreen@4d

> +		compatible = "microchip,ar1020-i2c";
> +		reg = <0x4d>;
> +		interrupt-parent = <&gpio3>;
> +		interrupts = <11 IRQ_TYPE_LEVEL_HIGH>;
> +	};
> -- 
> 2.1.4
> 
> --
> To unsubscribe from this list: send the line "unsubscribe devicetree" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* [PATCH v2] input: touchscreen: ar1021_i2c: highlight support for AR1020
  2017-04-13 20:35     ` Rob Herring
@ 2017-04-14  6:02       ` Martin Kepplinger
  0 siblings, 0 replies; 12+ messages in thread
From: Martin Kepplinger @ 2017-04-14  6:02 UTC (permalink / raw)
  To: robh, dmitry.torokhov
  Cc: christian.gmeiner, linux, linux-input, linux-kernel, devicetree,
	Martin Kepplinger

ar1021_i2c simply also supports the ar1020 device I'm using. This is
tested. They also share the same datasheet:

   http://ww1.microchip.com/downloads/en/DeviceDoc/40001393C.pdf

So let users see that they have a compatible in front of them by adding
AR1020 to the driver's description.

Signed-off-by: Martin Kepplinger <martin.kepplinger@ginzinger.com>
---

revision history
----------------
v2: leave compatible string untouched. only add description.
v1: initial idea.


 drivers/input/touchscreen/Kconfig      | 4 ++--
 drivers/input/touchscreen/ar1021_i2c.c | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/input/touchscreen/Kconfig b/drivers/input/touchscreen/Kconfig
index 33c62e5..535b91a 100644
--- a/drivers/input/touchscreen/Kconfig
+++ b/drivers/input/touchscreen/Kconfig
@@ -96,8 +96,8 @@ config TOUCHSCREEN_AR1021_I2C
 	tristate "Microchip AR1021 i2c touchscreen"
 	depends on I2C && OF
 	help
-	  Say Y here if you have the Microchip AR1021 touchscreen controller
-	  chip in your system.
+	  Say Y here if you have the Microchip AR1020 or AR1021 touchscreen
+	  controller chip in your system.
 
 	  If unsure, say N.
 
diff --git a/drivers/input/touchscreen/ar1021_i2c.c b/drivers/input/touchscreen/ar1021_i2c.c
index 2e7500e..03784d2 100644
--- a/drivers/input/touchscreen/ar1021_i2c.c
+++ b/drivers/input/touchscreen/ar1021_i2c.c
@@ -1,5 +1,5 @@
 /*
- * Microchip AR1021 driver for I2C
+ * Microchip AR1020 and AR1021 driver for I2C
  *
  * Author: Christian Gmeiner <christian.gmeiner@gmail.com>
  *
@@ -175,5 +175,5 @@ static struct i2c_driver ar1021_i2c_driver = {
 module_i2c_driver(ar1021_i2c_driver);
 
 MODULE_AUTHOR("Christian Gmeiner <christian.gmeiner@gmail.com>");
-MODULE_DESCRIPTION("Microchip AR1021 I2C Driver");
+MODULE_DESCRIPTION("Microchip AR1020 and AR1021 I2C Driver");
 MODULE_LICENSE("GPL");
-- 
2.1.4

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

* [PATCH v2] dt-bindings: input: add bindings document for ar1021_i2c driver
  2017-04-13 20:40   ` Rob Herring
@ 2017-04-14  6:11     ` Martin Kepplinger
  2017-04-20 13:40       ` Rob Herring
  0 siblings, 1 reply; 12+ messages in thread
From: Martin Kepplinger @ 2017-04-14  6:11 UTC (permalink / raw)
  To: robh, dmitry.torokhov
  Cc: christian.gmeiner, linux, linux-input, linux-kernel, devicetree,
	Martin Kepplinger

Add a simple binding document describing the supported devices and the
I2C bus address.

Signed-off-by: Martin Kepplinger <martin.kepplinger@ginzinger.com>
---

revision history
----------------
v2: fixed subject line and binding; thanks Rob Herring
v1: initial idea


 .../devicetree/bindings/input/touchscreen/ar1021.txt     | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/input/touchscreen/ar1021.txt

diff --git a/Documentation/devicetree/bindings/input/touchscreen/ar1021.txt b/Documentation/devicetree/bindings/input/touchscreen/ar1021.txt
new file mode 100644
index 0000000..e459e85
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/touchscreen/ar1021.txt
@@ -0,0 +1,16 @@
+* Microchip AR1020 and AR1021 touchscreen interface (I2C)
+
+Required properties:
+- compatible		: "microchip,ar1021-i2c"
+- reg			: I2C slave address
+- interrupt-parent	: the phandle for the interrupt controller
+- interrupts		: touch controller interrupt
+
+Example:
+
+	touchscreen@4d {
+		compatible = "microchip,ar1021-i2c";
+		reg = <0x4d>;
+		interrupt-parent = <&gpio3>;
+		interrupts = <11 IRQ_TYPE_LEVEL_HIGH>;
+	};
-- 
2.1.4

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

* Re: [PATCH v2] dt-bindings: input: add bindings document for ar1021_i2c driver
  2017-04-14  6:11     ` [PATCH v2] dt-bindings: input: add bindings document for ar1021_i2c driver Martin Kepplinger
@ 2017-04-20 13:40       ` Rob Herring
  2017-04-20 17:42         ` Dmitry Torokhov
  0 siblings, 1 reply; 12+ messages in thread
From: Rob Herring @ 2017-04-20 13:40 UTC (permalink / raw)
  To: Martin Kepplinger
  Cc: dmitry.torokhov, christian.gmeiner, linux, linux-input,
	linux-kernel, devicetree

On Fri, Apr 14, 2017 at 08:11:38AM +0200, Martin Kepplinger wrote:
> Add a simple binding document describing the supported devices and the
> I2C bus address.
> 
> Signed-off-by: Martin Kepplinger <martin.kepplinger@ginzinger.com>
> ---
> 
> revision history
> ----------------
> v2: fixed subject line and binding; thanks Rob Herring
> v1: initial idea
> 
> 
>  .../devicetree/bindings/input/touchscreen/ar1021.txt     | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/input/touchscreen/ar1021.txt

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

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

* Re: [PATCH v2] dt-bindings: input: add bindings document for ar1021_i2c driver
  2017-04-20 13:40       ` Rob Herring
@ 2017-04-20 17:42         ` Dmitry Torokhov
  0 siblings, 0 replies; 12+ messages in thread
From: Dmitry Torokhov @ 2017-04-20 17:42 UTC (permalink / raw)
  To: Rob Herring
  Cc: Martin Kepplinger, christian.gmeiner, linux, linux-input,
	linux-kernel, devicetree

On Thu, Apr 20, 2017 at 08:40:42AM -0500, Rob Herring wrote:
> On Fri, Apr 14, 2017 at 08:11:38AM +0200, Martin Kepplinger wrote:
> > Add a simple binding document describing the supported devices and the
> > I2C bus address.
> > 
> > Signed-off-by: Martin Kepplinger <martin.kepplinger@ginzinger.com>
> > ---
> > 
> > revision history
> > ----------------
> > v2: fixed subject line and binding; thanks Rob Herring
> > v1: initial idea
> > 
> > 
> >  .../devicetree/bindings/input/touchscreen/ar1021.txt     | 16 ++++++++++++++++
> >  1 file changed, 16 insertions(+)
> >  create mode 100644 Documentation/devicetree/bindings/input/touchscreen/ar1021.txt
> 
> Acked-by: Rob Herring <robh@kernel.org>

Applied, thank you.

-- 
Dmitry

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

end of thread, other threads:[~2017-04-20 17:42 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-11 10:27 [PATCH 1/3] input: touchscreen: ar1021_i2c: add support for AR1020 Martin Kepplinger
2017-04-11 10:27 ` [PATCH 2/3] Documentation: devicetree: bindings: add bindings doc for ar1021 driver Martin Kepplinger
2017-04-13 20:40   ` Rob Herring
2017-04-14  6:11     ` [PATCH v2] dt-bindings: input: add bindings document for ar1021_i2c driver Martin Kepplinger
2017-04-20 13:40       ` Rob Herring
2017-04-20 17:42         ` Dmitry Torokhov
2017-04-11 10:27 ` [PATCH 3/3] input: touchscreen: ar1021_i2c: coding style fixes Martin Kepplinger
2017-04-12 15:41   ` Dmitry Torokhov
2017-04-12 15:40 ` [PATCH 1/3] input: touchscreen: ar1021_i2c: add support for AR1020 Dmitry Torokhov
2017-04-13  6:38   ` Martin Kepplinger
2017-04-13 20:35     ` Rob Herring
2017-04-14  6:02       ` [PATCH v2] input: touchscreen: ar1021_i2c: highlight " Martin Kepplinger

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