Input: ads7877: Remove bitrotted comment

Message ID 1398201501-13470-1-git-send-email-broonie@kernel.org
State New
Headers show

Commit Message

Mark Brown April 22, 2014, 9:18 p.m.
From: Mark Brown <broonie@linaro.org>

While searching for users of spi_async() I found a reference in the ad7877
driver to using it to initiate data transfer from the interrupt handler.
However there is no code for this, instead the interrupt handler is a
threaded handler and uses spi_sync() instead.

Remove the bitrotted comment, though in actual fact the use case mentioned
is a great use for spi_async() since it would cut down on latency handling
the interrupt by saving us a context switch before we start SPI.

This was previously implemented, it was removed in commit b534422b2d11
(Input: ad7877 - switch to using threaded IRQ) for code complexity reasons.
It may be better to revert that commit instead.

Signed-off-by: Mark Brown <broonie@linaro.org>
---
 drivers/input/touchscreen/ad7877.c | 5 -----
 1 file changed, 5 deletions(-)

Comments

Dmitry Torokhov April 23, 2014, 12:39 a.m. | #1
On Tue, Apr 22, 2014 at 10:18:21PM +0100, Mark Brown wrote:
> From: Mark Brown <broonie@linaro.org>
> 
> While searching for users of spi_async() I found a reference in the ad7877
> driver to using it to initiate data transfer from the interrupt handler.
> However there is no code for this, instead the interrupt handler is a
> threaded handler and uses spi_sync() instead.
> 
> Remove the bitrotted comment, though in actual fact the use case mentioned
> is a great use for spi_async() since it would cut down on latency handling
> the interrupt by saving us a context switch before we start SPI.
> 
> This was previously implemented, it was removed in commit b534422b2d11
> (Input: ad7877 - switch to using threaded IRQ) for code complexity reasons.
> It may be better to revert that commit instead.

Hmm, maybe.. although I think original would cause device 'stuck' if
call to spi_async() fails, so probably not a straight revert...

> 
> Signed-off-by: Mark Brown <broonie@linaro.org>
> ---
>  drivers/input/touchscreen/ad7877.c | 5 -----
>  1 file changed, 5 deletions(-)
> 
> diff --git a/drivers/input/touchscreen/ad7877.c b/drivers/input/touchscreen/ad7877.c
> index 6793c85903ae..523865daa1d3 100644
> --- a/drivers/input/touchscreen/ad7877.c
> +++ b/drivers/input/touchscreen/ad7877.c
> @@ -210,11 +210,6 @@ static bool gpio3;
>  module_param(gpio3, bool, 0);
>  MODULE_PARM_DESC(gpio3, "If gpio3 is set to 1 AUX3 acts as GPIO3");
>  
> -/*
> - * ad7877_read/write are only used for initial setup and for sysfs controls.
> - * The main traffic is done using spi_async() in the interrupt handler.
> - */
> -
>  static int ad7877_read(struct spi_device *spi, u16 reg)
>  {
>  	struct ser_req *req;
> -- 
> 1.9.2
> 
>
Mark Brown April 23, 2014, 10:16 a.m. | #2
On Tue, Apr 22, 2014 at 05:39:28PM -0700, Dmitry Torokhov wrote:
> On Tue, Apr 22, 2014 at 10:18:21PM +0100, Mark Brown wrote:

> > Remove the bitrotted comment, though in actual fact the use case mentioned
> > is a great use for spi_async() since it would cut down on latency handling
> > the interrupt by saving us a context switch before we start SPI.

> > This was previously implemented, it was removed in commit b534422b2d11
> > (Input: ad7877 - switch to using threaded IRQ) for code complexity reasons.
> > It may be better to revert that commit instead.

> Hmm, maybe.. although I think original would cause device 'stuck' if
> call to spi_async() fails, so probably not a straight revert...

Probably best just to apply this, then - someone can always reimplement
if they need to.
Dmitry Torokhov April 25, 2014, 6:38 a.m. | #3
On Wed, Apr 23, 2014 at 11:16:23AM +0100, Mark Brown wrote:
> On Tue, Apr 22, 2014 at 05:39:28PM -0700, Dmitry Torokhov wrote:
> > On Tue, Apr 22, 2014 at 10:18:21PM +0100, Mark Brown wrote:
> 
> > > Remove the bitrotted comment, though in actual fact the use case mentioned
> > > is a great use for spi_async() since it would cut down on latency handling
> > > the interrupt by saving us a context switch before we start SPI.
> 
> > > This was previously implemented, it was removed in commit b534422b2d11
> > > (Input: ad7877 - switch to using threaded IRQ) for code complexity reasons.
> > > It may be better to revert that commit instead.
> 
> > Hmm, maybe.. although I think original would cause device 'stuck' if
> > call to spi_async() fails, so probably not a straight revert...
> 
> Probably best just to apply this, then - someone can always reimplement
> if they need to.

OK, applied.

Thanks.

Patch

diff --git a/drivers/input/touchscreen/ad7877.c b/drivers/input/touchscreen/ad7877.c
index 6793c85903ae..523865daa1d3 100644
--- a/drivers/input/touchscreen/ad7877.c
+++ b/drivers/input/touchscreen/ad7877.c
@@ -210,11 +210,6 @@  static bool gpio3;
 module_param(gpio3, bool, 0);
 MODULE_PARM_DESC(gpio3, "If gpio3 is set to 1 AUX3 acts as GPIO3");
 
-/*
- * ad7877_read/write are only used for initial setup and for sysfs controls.
- * The main traffic is done using spi_async() in the interrupt handler.
- */
-
 static int ad7877_read(struct spi_device *spi, u16 reg)
 {
 	struct ser_req *req;