From: Jonathan Cameron <Jonathan.Cameron@gmail.com>
To: LKML <linux-kernel@vger.kernel.org>,
spi-devel-general@lists.sourceforge.net,
LM Sensors <lm-sensors@lm-sensors.org>
Cc: Jean Delvare <khali@linux-fr.org>, Dmitry Torokhov <dtor@mail.ru>,
"Hans J. Koch" <hjk@linutronix.de>,
hmh@hmh.eng.br, David Brownell <david-b@pacbell.net>,
mgross@linux.intel.com, Ben Nizette <bn@niasdigital.com>,
Anton Vorontsov <avorontsov@ru.mvista.com>
Subject: [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc)
Date: Wed, 23 Jul 2008 18:00:29 +0100 [thread overview]
Message-ID: <488763AD.4050400@gmail.com> (raw)
Dear All,
The need for an industrialio subsystem was discussed in
http://lkml.org/lkml/2008/5/20/135
Firstly thanks to all the people who have contributed to the discussion
of this in the past.
In brief the intention is provide a kernel subsystem directed towards the
handling on sensors (and later related output devices) such as ADC's,
accelerometers and many others.
Key features of the subsystem include:
* Provision of sysfs access for direct reading from devices (similar to hwmon
but without the buffering / update rate restrictions)
* Provision of chrdevs through which events may be passed to userspace in a
similar fashion to the input subsystem. These events may be anything from
hardware thresholds set on the sensor itself to sw / hw ring buffer event
notifications (50% full etc).
* Provision of access via chrdevs to hardware ring buffers on devices that
provide them.
* Software ring buffer support to allow semi regular capture of data form the
device. Typically this will be driven from either datardy events, or from
a periodic timer interrupt (to this end a very simple wrapper for periodic
RTC's is included. This will move to more generic timer interfaces as and when
they become available. For now available rtc's must be registered with the
subsystem via the industrialio_register_ptimer function form within a board
init.
* A set of sample drivers illustrating the main 'classes' of device. By classes
I really mean devices that are interfaced with in a similar way.
The subsystem is now in a functional state with a small set of drivers:
Max1363 (supports numerous Maxim i2c ADC's) (tested with max1363 and max1238 chips)
- Uses a periodic timer to provide ring buffer mode.
- All reads form these devices are scan modes so direct single element access
is not provided.
- Monitor mode on max1363 is not yet supported (need to do a bit debugging of
the board I have so as to be able to test this).
ST LIS3L02DQ - SPI accelerometer.
- Uses a datardy interrupt to driver a software ring buffer.
- Most functionality of this device is supported.
VTI SCA3000 (tested with an e05)
- Hardware ring buffer.
More drivers in preparation.
Next focus will be on cleaning up / implementing a more generic timer framework
and allowing the system to partly run if not all dependencies are met
(particularly availability of timers).
An initial set of patches will be attached to this thread shortly.
--
Jonathan Cameron
WARNING: multiple messages have this Message-ID (diff)
From: Jonathan Cameron <Jonathan.Cameron@gmail.com>
To: LKML <linux-kernel@vger.kernel.org>,
spi-devel-general@lists.sourceforge.net,
LM Sensors <lm-sensors@lm-sensors.org>
Cc: Jean Delvare <khali@linux-fr.org>, Dmitry Torokhov <dtor@mail.ru>,
"Hans J. Koch" <hjk@linutronix.de>,
hmh@hmh.eng.br, David Brownell <david-b@pacbell.net>,
mgross@linux.intel.com, Ben Nizette <bn@niasdigital.com>,
Anton Vorontsov <avorontsov@ru.mvista.com>
Subject: [lm-sensors] [Patch 0/4] IndustrialIO subsystem (ADCs,
Date: Wed, 23 Jul 2008 17:00:29 +0000 [thread overview]
Message-ID: <488763AD.4050400@gmail.com> (raw)
Dear All,
The need for an industrialio subsystem was discussed in
http://lkml.org/lkml/2008/5/20/135
Firstly thanks to all the people who have contributed to the discussion
of this in the past.
In brief the intention is provide a kernel subsystem directed towards the
handling on sensors (and later related output devices) such as ADC's,
accelerometers and many others.
Key features of the subsystem include:
* Provision of sysfs access for direct reading from devices (similar to hwmon
but without the buffering / update rate restrictions)
* Provision of chrdevs through which events may be passed to userspace in a
similar fashion to the input subsystem. These events may be anything from
hardware thresholds set on the sensor itself to sw / hw ring buffer event
notifications (50% full etc).
* Provision of access via chrdevs to hardware ring buffers on devices that
provide them.
* Software ring buffer support to allow semi regular capture of data form the
device. Typically this will be driven from either datardy events, or from
a periodic timer interrupt (to this end a very simple wrapper for periodic
RTC's is included. This will move to more generic timer interfaces as and when
they become available. For now available rtc's must be registered with the
subsystem via the industrialio_register_ptimer function form within a board
init.
* A set of sample drivers illustrating the main 'classes' of device. By classes
I really mean devices that are interfaced with in a similar way.
The subsystem is now in a functional state with a small set of drivers:
Max1363 (supports numerous Maxim i2c ADC's) (tested with max1363 and max1238 chips)
- Uses a periodic timer to provide ring buffer mode.
- All reads form these devices are scan modes so direct single element access
is not provided.
- Monitor mode on max1363 is not yet supported (need to do a bit debugging of
the board I have so as to be able to test this).
ST LIS3L02DQ - SPI accelerometer.
- Uses a datardy interrupt to driver a software ring buffer.
- Most functionality of this device is supported.
VTI SCA3000 (tested with an e05)
- Hardware ring buffer.
More drivers in preparation.
Next focus will be on cleaning up / implementing a more generic timer framework
and allowing the system to partly run if not all dependencies are met
(particularly availability of timers).
An initial set of patches will be attached to this thread shortly.
--
Jonathan Cameron
_______________________________________________
lm-sensors mailing list
lm-sensors@lm-sensors.org
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors
next reply other threads:[~2008-07-23 17:00 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-23 17:00 Jonathan Cameron [this message]
2008-07-23 17:00 ` [lm-sensors] [Patch 0/4] IndustrialIO subsystem (ADCs, Jonathan Cameron
2008-07-23 17:08 ` [Patch 1/4] Industrialio Core Jonathan Cameron
2008-07-23 17:08 ` [lm-sensors] " Jonathan Cameron
2008-07-23 18:31 ` Anton Vorontsov
2008-07-23 18:31 ` [lm-sensors] " Anton Vorontsov
2008-07-24 10:12 ` [spi-devel-general] " Jonathan Cameron
2008-07-24 10:12 ` [lm-sensors] " Jonathan Cameron
2008-07-23 19:42 ` Ben Dooks
2008-07-23 19:42 ` [lm-sensors] " Ben Dooks
2008-07-24 10:33 ` Jonathan Cameron
2008-07-24 10:33 ` [lm-sensors] " Jonathan Cameron
2008-07-24 9:01 ` Eric Piel
2008-07-24 9:01 ` [lm-sensors] " Eric Piel
2008-07-24 11:56 ` [spi-devel-general] " Jonathan Cameron
2008-07-24 11:56 ` [lm-sensors] " Jonathan Cameron
2008-07-23 17:11 ` [lm-sensors] [Patch 2/4] Max1363 (and similar) ADCs Jonathan Cameron
2008-07-23 17:11 ` Jonathan Cameron
2008-07-23 17:14 ` [Patch 3/4] ST LIS3L02DQ accelerometer Jonathan Cameron
2008-07-23 17:14 ` [lm-sensors] " Jonathan Cameron
2008-07-23 17:07 ` Alan Cox
2008-07-23 17:07 ` [lm-sensors] " Alan Cox
2008-07-23 17:44 ` Jonathan Cameron
2008-07-23 17:44 ` [lm-sensors] " Jonathan Cameron
2008-07-23 17:17 ` [Patch 4/4] VTI SCA3000 Series accelerometer driver Jonathan Cameron
2008-07-23 17:17 ` [lm-sensors] " Jonathan Cameron
2008-07-23 17:48 ` [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Henrique de Moraes Holschuh
2008-07-23 17:48 ` [lm-sensors] [Patch 0/4] IndustrialIO subsystem (ADCs, Henrique de Moraes Holschuh
2008-07-24 9:44 ` [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Eric Piel
2008-07-24 9:44 ` [lm-sensors] [Patch 0/4] IndustrialIO subsystem (ADCs, Eric Piel
2008-07-24 10:08 ` [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Ben Dooks
2008-07-24 10:08 ` [lm-sensors] [Patch 0/4] IndustrialIO subsystem (ADCs, Ben Dooks
2008-07-24 12:20 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Jonathan Cameron
2008-07-24 12:20 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Jonathan Cameron
2008-07-24 12:13 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Jonathan Cameron
2008-07-24 12:13 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Jonathan Cameron
2008-07-24 12:37 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Eric Piel
2008-07-24 12:37 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Eric Piel
2008-07-24 12:45 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Jonathan Cameron
2008-07-24 12:45 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Jonathan Cameron
2008-07-24 13:26 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Dmitry Torokhov
2008-07-24 13:26 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Dmitry Torokhov
2008-07-24 13:39 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Jonathan Cameron
2008-07-24 13:39 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Jonathan Cameron
2008-07-23 18:36 ` [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) David Brownell
2008-07-23 18:36 ` [lm-sensors] [Patch 0/4] IndustrialIO subsystem (ADCs, David Brownell
2008-07-23 19:19 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Ben Dooks
2008-07-23 19:19 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Ben Dooks
2008-07-24 7:41 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Hans J. Koch
2008-07-24 7:41 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Hans J. Koch
2008-07-24 9:19 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Alan Cox
2008-07-24 9:19 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Alan Cox
2008-07-24 12:28 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Jonathan Cameron
2008-07-24 12:28 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Jonathan Cameron
2008-07-24 10:01 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Ben Dooks
2008-07-24 10:01 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Ben Dooks
2008-07-24 15:38 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Hans J. Koch
2008-07-24 15:38 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Hans J. Koch
2008-07-24 16:11 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Jonathan Cameron
2008-07-24 16:11 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Jonathan Cameron
2008-07-24 12:32 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Jonathan Cameron
2008-07-24 12:32 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Jonathan Cameron
2008-07-23 19:33 ` [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Ben Dooks
2008-07-23 19:33 ` [lm-sensors] [spi-devel-general] [Patch 0/4] IndustrialIO Ben Dooks
2008-07-24 17:57 ` [Patch 5/4] IndustrialIO subsystem very early cut of documentation + userspace demo Jonathan Cameron
2008-07-24 17:57 ` [lm-sensors] [Patch 5/4] IndustrialIO subsystem very early cut of Jonathan Cameron
2008-07-24 22:25 ` [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Jan Engelhardt
2008-07-24 22:25 ` [lm-sensors] [Patch 0/4] IndustrialIO subsystem (ADCs, Jan Engelhardt
2008-07-25 11:12 ` [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Jonathan Cameron
2008-07-25 11:12 ` [lm-sensors] [Patch 0/4] IndustrialIO subsystem (ADCs, Jonathan Cameron
2008-07-25 11:28 ` [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Anton Vorontsov
2008-07-25 11:28 ` [lm-sensors] [Patch 0/4] IndustrialIO subsystem (ADCs, Anton Vorontsov
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=488763AD.4050400@gmail.com \
--to=jonathan.cameron@gmail.com \
--cc=avorontsov@ru.mvista.com \
--cc=bn@niasdigital.com \
--cc=david-b@pacbell.net \
--cc=dtor@mail.ru \
--cc=hjk@linutronix.de \
--cc=hmh@hmh.eng.br \
--cc=khali@linux-fr.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lm-sensors@lm-sensors.org \
--cc=mgross@linux.intel.com \
--cc=spi-devel-general@lists.sourceforge.net \
/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.