linux-iio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jonathan Cameron <jic23@cam.ac.uk>
To: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Maxime Ripard <maxime.ripard@free-electrons.com>,
	linux-iio@vger.kernel.org,
	Patrice Vilchez <patrice.vilchez@atmel.com>,
	Nicolas Ferre <nicolas.ferre@atmel.com>,
	linux-arm-kernel@lists.infradead.org,
	Mark Brown <broonie@opensource.wolfsonmicro.com>,
	Linus Walleij <linus.walleij@linaro.org>
Subject: Re: [PATCH 2/3] ARM: AT91: IIO: Add AT91 ADC driver.
Date: Thu, 20 Oct 2011 09:33:29 +0100	[thread overview]
Message-ID: <4E9FDCD9.7030202@cam.ac.uk> (raw)
In-Reply-To: <20111020090532.7df7af70@skate>

Bringing in Mark and Linus as others who have been active in talking ab=
out
similar issues.
> Hello,
>=20
> Le Wed, 19 Oct 2011 20:23:50 +0200,
> Maxime Ripard <maxime.ripard@free-electrons.com> a =C3=A9crit :
>=20
>> On 19/10/2011 18:42, Jonathan Cameron wrote:
>>> Afraid I'm out of time for today, but just thought I'd ask one quic=
k question...
>>>
>>> Why isn't this touchscreen ADC in input?
>>
>> Because what I say in the Kconfig is mostly wrong... Sorry about tha=
t.
>>
>> Actually, like I was saying, this ADC is present in a lot of AT91 So=
C,
>> and while it is always an ADC, sometimes (like on the G45), it can b=
e
>> used as a touchscreen controller, or even as both, with channels for=
 the
>> touchscreen and channels as ADC. On the G20 however, it is just an A=
DC.
>>
>> For now, the plan is only to support the ADC mode, so I put it in ad=
c.
>=20
> Just to expand a bit on this: there is already in the kernel an input
> driver for the AT91 touchscreen which uses some ADC channels (that ha=
ve
> additional touchscreen-related features: on the G45, you have 8 ADCs
> channels, 4 can optionally be used for touchscreen, the 4 other are
> just raw ADCs).
>=20
> The ultimate goal is of course to make it possible to use both the II=
O
> AT91 ADC driver and the AT91 touchscreen driver work simultaneously
> (with of course non-conflicting ADC channels usage). However, as show=
n
> by recent discussions on this list, it is not yet entirely clearly ho=
w
> this should be done:
>=20
>  * Should we have some low-level ADC driver in arch/arm/mach-at91/ th=
at
>    allows to request/release/access the ADC channels, this driver
>    providing an internal kernel API used by the IIO ADC driver and th=
e
>    touchscreen driver ?
That's definitely not going to go down well against moves to move every=
thing
that looks like a driver out of the arch directories. An equivalent som=
ewhere
else might work though.
>=20
>            sysfs access                  /dev/input/...
>            to ADC channels               access to touchscreen
>                 ||                              ||
>                 \/                              \/
>         +------------------+            +------------------+
>         |     AT91 IIO     |            | AT91 touchscreen |
>         +------------------+            +------------------+
>                  |                               |
>                  \_______________________________/
>                                  |
>                         +---------------------+
>                         | Some low-level ADC  |
>                         | code to request,    |
>                         | release and access  |
>                         | ADC channels        |
>                         +---------------------+
>=20
>  * Should IIO provide some internal kernel API (as you suggested some
>    time ago) so that kernel drivers can use ADC channels ?
>=20
>=20
>             +-------------------+
>             | AT91 touchscreen  | -> /dev/input/... access to touchsc=
reen
>             +-------------------+
>                      ||
>                      \/
>             +-------------------+
>             |   AT91 IIO        | -> sysfs access to ADC channels
>             +-------------------+
>=20
> Regards,
>=20
> Thomas
Agreed.  This is currently up in the air. The current state of those II=
O
hooks is that they do pull only.  Push based capture is tricky as for I=
IO
we want to control the triggering of the push at a far finer scale than
makes sense for input. I'm not yet clear how these two will play togeth=
er.

If we sit something underneath the IIO and input drivers (or use the lo=
wer
portions of IIO to do this) then the intent would be to have a fully ge=
neric
input touchscreen driver on top.  I'm not sure that's possible. For
example are the switches on the G45's adc (from datasheet) something th=
at
all/many similar touch screen controllers have?
I suppose we could support these in the chan_spec but only if it helps
us to write a generic touch screen driver on top.  I have no real
feeling for whether this would be possible...
(all my boards are headless ;)

Jonathan

  reply	other threads:[~2011-10-20  8:33 UTC|newest]

Thread overview: 68+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-19 16:18 [PATCH] AT91: Add a driver for the ADC Maxime Ripard
2011-10-19 16:18 ` [PATCH 1/3] ARM: AT91: Add platform data for the ADCs Maxime Ripard
2011-10-19 16:18 ` [PATCH 2/3] ARM: AT91: IIO: Add AT91 ADC driver Maxime Ripard
2011-10-19 16:42   ` Jonathan Cameron
2011-10-19 18:23     ` Maxime Ripard
2011-10-20  7:05       ` Thomas Petazzoni
2011-10-20  8:33         ` Jonathan Cameron [this message]
2011-10-20  8:49           ` Thomas Petazzoni
2011-10-20  9:19             ` Jonathan Cameron
2011-10-20  9:52           ` Mark Brown
2011-10-20  7:09   ` Lars-Peter Clausen
2011-10-21 17:54     ` Maxime Ripard
2011-10-21 17:55       ` Lars-Peter Clausen
2011-10-23  9:08   ` Jean-Christophe PLAGNIOL-VILLARD
2011-10-24  8:21     ` Maxime Ripard
2011-10-19 16:18 ` [PATCH 3/3] ARM: AT91: Add the ADC to the sam9g20ek board Maxime Ripard
2011-10-20  6:28   ` Alexander Stein
2011-10-21 17:47     ` Maxime Ripard
2011-10-20  7:14   ` Thomas Petazzoni
2011-11-03 10:11 ` [PATCHv2] AT91: Add a driver for the ADC Maxime Ripard
2011-11-03 10:11   ` [PATCH 1/3] ARM: AT91: Add platform data for the ADCs Maxime Ripard
2011-11-03 11:27     ` Linus Walleij
2011-11-03 16:27       ` Maxime Ripard
     [not found]         ` <CACRpkdZsNJwgC-7hp2zHNAcZVG-x8JN1CzV5KbYSiokD-9FUBw@mail.gmail.com>
2011-11-03 18:05           ` Jean-Christophe PLAGNIOL-VILLARD
2011-11-04 10:27     ` Jonathan Cameron
2011-11-04 10:36       ` Jonathan Cameron
2011-11-04 10:34     ` Jonathan Cameron
     [not found]       ` <4EB4031A.4080806@free-electrons.com>
2011-11-04 16:28         ` Jonathan Cameron
2011-11-03 10:11   ` [PATCH 2/3] ARM: AT91: IIO: Add AT91 ADC driver Maxime Ripard
2011-11-04 10:27     ` Jonathan Cameron
2011-11-03 10:11   ` [PATCH 3/3] ARM: AT91: Add the ADC to the sam9g20ek board Maxime Ripard
2011-11-04 10:33     ` Jonathan Cameron
     [not found]       ` <4EB3CB8C.8080008@free-electrons.com>
2011-11-04 16:32         ` Jonathan Cameron
2011-11-07 16:08 ` [PATCHv3] AT91: Add a driver for the ADC Maxime Ripard
2011-11-07 16:08   ` [PATCH 1/3] ARM: AT91: Add platform data for the ADCs Maxime Ripard
2011-11-07 16:27     ` Jonathan Cameron
2011-11-08 13:19     ` Thomas Petazzoni
2011-11-07 16:08   ` [PATCH 2/3] ARM: AT91: IIO: Add AT91 ADC driver Maxime Ripard
2011-11-08 13:30     ` Thomas Petazzoni
2011-11-07 16:08   ` [PATCH 3/3] ARM: AT91: Add the ADC to the sam9g20ek board Maxime Ripard
2011-11-09 10:19 ` [PATCHv4] AT91: Add a driver for the ADC Maxime Ripard
2011-11-09 10:19   ` [PATCH 1/3] ARM: AT91: Add platform data for the ADCs Maxime Ripard
2011-11-09 10:19   ` [PATCH 2/3] ARM: AT91: IIO: Add AT91 ADC driver Maxime Ripard
2011-11-10 17:35     ` Jonathan Cameron
2011-11-11 12:34       ` Jonathan Cameron
2011-11-14  9:59         ` Maxime Ripard
2011-11-14  9:06       ` Maxime Ripard
2011-11-09 10:19   ` [PATCH 3/3] ARM: AT91: Add the ADC to the sam9g20ek board Maxime Ripard
2011-11-10 17:37     ` Jonathan Cameron
  -- strict thread matches above, loose matches on Subject: below --
2011-11-14 10:06 [PATCHv5] AT91: Add a driver for the ADC Maxime Ripard
2011-11-14 10:06 ` [PATCH 2/3] ARM: AT91: IIO: Add AT91 ADC driver Maxime Ripard
2011-11-14 11:30   ` Nicolas Ferre
2011-11-14 11:37   ` Marek Vasut
2011-11-14 14:23     ` Maxime Ripard
2011-11-14 17:30 [PATCH v6] AT91: Add a driver for the ADC Maxime Ripard
2011-11-14 17:30 ` [PATCH 2/3] ARM: AT91: IIO: Add AT91 ADC driver Maxime Ripard
2011-11-14 21:32   ` Jonathan Cameron
2011-11-15 10:23     ` Maxime Ripard
2011-11-15 10:54 [PATCH v7] AT91: Add a driver for the ADC Maxime Ripard
2011-11-15 10:54 ` [PATCH 2/3] ARM: AT91: IIO: Add AT91 ADC driver Maxime Ripard
2011-11-16 15:39   ` Maxime Ripard
2011-11-18 10:12 [PATCH v8] AT91: Add a driver for the ADC Maxime Ripard
2011-11-18 10:12 ` [PATCH 2/3] ARM: AT91: IIO: Add AT91 ADC driver Maxime Ripard
2011-11-24 11:27 [PATCH v9] AT91: Add a driver for the ADC Maxime Ripard
2011-11-24 11:27 ` [PATCH 2/3] ARM: AT91: IIO: Add AT91 ADC driver Maxime Ripard
2011-11-24 14:28   ` Jean-Christophe PLAGNIOL-VILLARD
2011-11-30  9:14 [PATCH v11] AT91: Add a driver for the ADC Maxime Ripard
2011-11-30  9:15 ` [PATCH 2/3] ARM: AT91: IIO: Add AT91 ADC driver Maxime Ripard
2011-11-30 17:40   ` Arnd Bergmann
2011-12-02 13:17 [PATCH v12] AT91: Add a driver for the ADC Maxime Ripard
2011-12-02 13:17 ` [PATCH 2/3] ARM: AT91: IIO: Add AT91 ADC driver Maxime Ripard
2012-01-16 21:36 [PATCH RESEND v13] AT91: Add a driver for the ADC Maxime Ripard
2012-01-16 21:36 ` [PATCH 2/3] ARM: AT91: IIO: Add AT91 ADC driver Maxime Ripard
2012-01-17 17:35   ` Arnd Bergmann
2012-01-17 19:08     ` Maxime Ripard
2012-01-18 10:27   ` Nicolas Ferre

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=4E9FDCD9.7030202@cam.ac.uk \
    --to=jic23@cam.ac.uk \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-iio@vger.kernel.org \
    --cc=maxime.ripard@free-electrons.com \
    --cc=nicolas.ferre@atmel.com \
    --cc=patrice.vilchez@atmel.com \
    --cc=thomas.petazzoni@free-electrons.com \
    /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 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).