All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marek Vasut <marex@denx.de>
To: Juergen Beisert <jbe@pengutronix.de>
Cc: linux-iio@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	devel@driverdev.osuosl.org, fabio.estevam@freescale.com,
	jic23@cam.ac.uk
Subject: Re: [PATCHv5] staging/iio/adc: change the MXS touchscreen driver implementation
Date: Mon, 23 Sep 2013 01:55:04 +0200	[thread overview]
Message-ID: <201309230155.04914.marex@denx.de> (raw)
In-Reply-To: <1379593369-22010-1-git-send-email-jbe@pengutronix.de>

Dear Juergen Beisert,

> The following series replaces the current busy loop touchscreen
> implementation for i.MX28/i.MX23 SoCs by a fully interrupt driven
> implementation.
> 
> Since i.MX23 and i.MX28 silicon differs, the existing implementation can
> be used for the i.MX28 SoC only.
> 
> So, the first two patches of this series move the i.MX28 specific
> definitions out of the way. The third patch simplifies the register access
> to make it easier to add the i.MX23 support. Then the i.MX23 specific
> definitions are added, also the code to distinguish both SoCs at run-time.
> Up to here the existing touchscreen driver will now run on an i.MX23 Soc as
> well.
> 
> When the i.MX23 SoC is running from battery it seems not to be a good idea
> to run a busy loop to detect touches and their location. The fourth patch
> adds a fully interrupt driven implementation which makes use of the
> built-in delay and multiple sample features of the touchscreen controller.
> This will reduce the interrupt load to a minimum.
> 
> The next to last patch in this series just removes the existing busy loop
> implementation.
> 
> The last patch adds a devicetree bindings proposal (to be discussed).
> 
> Some restrictions/questions:
> 
> - the touchscreen part is yet tested on i.MX23 SoC only
> - has someone a good idea how to implement a reliable pressure measurement
> if the resistances of the touchscreen's plates are unknown?
> 
> Changes since v4:
> 
> - honor Jonathan's comments about function names
> - honor Dmitry's comments about workqueue canceling and interrupts
> - adding devicetree bindings proposal
> 
> Changes since v3:
> 
> - split adding register access functions and i.MX23 support into two
> patches
> 
> Changes since v2:
> 
> - useless debug output removed
> 
> Changes since v1:
> 
> - adding register access functions to make the existing code more readable
> - adding some functions to distinguish the SoCs at run-time to avoid
> if-else contructs whenever differences in the register layout between
> i.MX23 and i.MX28 must be handled

Just tested this on M28EVK, the touchscreen is dead. I do not get any touch 
events when I use ts_calibrate and when I hd /dev/input/eventX , I get nothing 
either.

Right now, I'm somehow on a tight schedule, but I'd like to see this resolved 
ASAP. Do you have any hint for me ?

btw. the touchscreen connection on M28EVK is pretty much the same as on MX28EVK.

Best regards,
Marek Vasut

WARNING: multiple messages have this Message-ID (diff)
From: marex@denx.de (Marek Vasut)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCHv5] staging/iio/adc: change the MXS touchscreen driver implementation
Date: Mon, 23 Sep 2013 01:55:04 +0200	[thread overview]
Message-ID: <201309230155.04914.marex@denx.de> (raw)
In-Reply-To: <1379593369-22010-1-git-send-email-jbe@pengutronix.de>

Dear Juergen Beisert,

> The following series replaces the current busy loop touchscreen
> implementation for i.MX28/i.MX23 SoCs by a fully interrupt driven
> implementation.
> 
> Since i.MX23 and i.MX28 silicon differs, the existing implementation can
> be used for the i.MX28 SoC only.
> 
> So, the first two patches of this series move the i.MX28 specific
> definitions out of the way. The third patch simplifies the register access
> to make it easier to add the i.MX23 support. Then the i.MX23 specific
> definitions are added, also the code to distinguish both SoCs at run-time.
> Up to here the existing touchscreen driver will now run on an i.MX23 Soc as
> well.
> 
> When the i.MX23 SoC is running from battery it seems not to be a good idea
> to run a busy loop to detect touches and their location. The fourth patch
> adds a fully interrupt driven implementation which makes use of the
> built-in delay and multiple sample features of the touchscreen controller.
> This will reduce the interrupt load to a minimum.
> 
> The next to last patch in this series just removes the existing busy loop
> implementation.
> 
> The last patch adds a devicetree bindings proposal (to be discussed).
> 
> Some restrictions/questions:
> 
> - the touchscreen part is yet tested on i.MX23 SoC only
> - has someone a good idea how to implement a reliable pressure measurement
> if the resistances of the touchscreen's plates are unknown?
> 
> Changes since v4:
> 
> - honor Jonathan's comments about function names
> - honor Dmitry's comments about workqueue canceling and interrupts
> - adding devicetree bindings proposal
> 
> Changes since v3:
> 
> - split adding register access functions and i.MX23 support into two
> patches
> 
> Changes since v2:
> 
> - useless debug output removed
> 
> Changes since v1:
> 
> - adding register access functions to make the existing code more readable
> - adding some functions to distinguish the SoCs at run-time to avoid
> if-else contructs whenever differences in the register layout between
> i.MX23 and i.MX28 must be handled

Just tested this on M28EVK, the touchscreen is dead. I do not get any touch 
events when I use ts_calibrate and when I hd /dev/input/eventX , I get nothing 
either.

Right now, I'm somehow on a tight schedule, but I'd like to see this resolved 
ASAP. Do you have any hint for me ?

btw. the touchscreen connection on M28EVK is pretty much the same as on MX28EVK.

Best regards,
Marek Vasut

  parent reply	other threads:[~2013-09-22 23:55 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-19 12:22 [PATCHv5] staging/iio/adc: change the MXS touchscreen driver implementation Juergen Beisert
2013-09-19 12:22 ` Juergen Beisert
2013-09-19 12:22 ` [PATCH 1/7] Staging/iio/adc/touchscreen/MXS: distinguish i.MX23's and i.MX28's LRADC Juergen Beisert
2013-09-19 12:22   ` Juergen Beisert
2013-09-19 12:22 ` [PATCH 2/7] Staging/iio/adc/touchscreen/MXS: separate i.MX28 specific register bits Juergen Beisert
2013-09-19 12:22   ` Juergen Beisert
2013-09-19 12:22 ` [PATCH 3/7] Staging/iio/adc/touchscreen/MXS: simplify register access Juergen Beisert
2013-09-19 12:22   ` Juergen Beisert
2013-09-19 12:22 ` [PATCH 4/7] Staging/iio/adc/touchscreen/MXS: add i.MX23 support to the LRADC touchscreen driver Juergen Beisert
2013-09-19 12:22   ` Juergen Beisert
2013-09-19 12:22 ` [PATCH 5/7] Staging/iio/adc/touchscreen/MXS: add interrupt driven touch detection Juergen Beisert
2013-09-19 12:22   ` Juergen Beisert
2013-09-21 12:36   ` Jonathan Cameron
2013-09-21 12:36     ` Jonathan Cameron
2013-09-19 12:22 ` [PATCH 6/7] Staging/iio/adc/touchscreen/MXS: Remove old touchscreen detection implementation Juergen Beisert
2013-09-19 12:22   ` Juergen Beisert
2013-09-19 12:22 ` [PATCH 7/7] Staging/iio/adc/touchscreen/MXS: provide devicetree adaption Juergen Beisert
2013-09-19 12:22   ` Juergen Beisert
2013-09-21 12:42   ` Jonathan Cameron
2013-09-21 12:42     ` Jonathan Cameron
2013-09-21 12:42     ` Jonathan Cameron
2013-09-23  7:42     ` Jürgen Beisert
2013-09-23  7:42       ` Jürgen Beisert
2013-09-23  7:42       ` Jürgen Beisert
2013-09-22 23:55 ` Marek Vasut [this message]
2013-09-22 23:55   ` [PATCHv5] staging/iio/adc: change the MXS touchscreen driver implementation Marek Vasut
2013-09-23  7:55   ` Jürgen Beisert
2013-09-23  7:55     ` Jürgen Beisert
2013-09-23  9:25     ` Lothar Waßmann
2013-09-23  9:25       ` Lothar Waßmann
2013-09-23 10:35     ` Jürgen Beisert
2013-09-23 10:35       ` Jürgen Beisert
2013-09-23 10:36       ` Marek Vasut
2013-09-23 10:36         ` Marek Vasut
2013-09-23 11:57         ` Jürgen Beisert
2013-09-23 11:57           ` Jürgen Beisert
2013-09-23 12:12       ` Lothar Waßmann
2013-09-23 12:12         ` Lothar Waßmann
2013-09-23 13:24         ` Jürgen Beisert
2013-09-23 13:24           ` Jürgen Beisert
2013-09-23 13:40           ` Lothar Waßmann
2013-09-23 13:40             ` Lothar Waßmann
2013-09-23 14:05             ` Jürgen Beisert
2013-09-23 14:05               ` Jürgen Beisert
2013-09-23 13:40           ` Jürgen Beisert
2013-09-23 13:40             ` Jürgen Beisert

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201309230155.04914.marex@denx.de \
    --to=marex@denx.de \
    --cc=devel@driverdev.osuosl.org \
    --cc=fabio.estevam@freescale.com \
    --cc=jbe@pengutronix.de \
    --cc=jic23@cam.ac.uk \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-iio@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.