public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Ben Dooks <ben-linux@fluff.org>
To: Jonathan Cameron <Jonathan.Cameron@gmail.com>
Cc: LKML <linux-kernel@vger.kernel.org>,
	spi-devel-general@lists.sourceforge.net,
	LM Sensors <lm-sensors@lm-sensors.org>,
	mgross@linux.intel.com, Dmitry Torokhov <dtor@mail.ru>,
	David Brownell <david-b@pacbell.net>,
	hmh@hmh.eng.br, Jean Delvare <khali@linux-fr.org>,
	Ben Nizette <bn@niasdigital.com>
Subject: Re: [spi-devel-general] [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc)
Date: Wed, 23 Jul 2008 20:33:34 +0100	[thread overview]
Message-ID: <20080723193334.GD26938@trinity.fluff.org> (raw)
In-Reply-To: <488763AD.4050400@gmail.com>

On Wed, Jul 23, 2008 at 06:00:29PM +0100, Jonathan Cameron wrote:
> 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.

Thinking about this, basically we have an event buffer and management
system that could live in  drivers/event. It manages the event sources
and buffering, including tagging the data and buffering it ready for
consumption.

One thing I'd like to see is that the reading application should be
able to choose to have events aggregated or not, so that if a few
events turn up very fast it can choose to take them as one single
item.
 
> 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)

Having an update rate and buffering is possibly useful, given that if you
have say a number of ADC inputs but only one converter, then it is possible
that there will be some form of resource starvation.
 
> * 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.

-- 
Ben

Q:      What's a light-year?
A:      One-third less calories than a regular year.


  parent reply	other threads:[~2008-07-23 19:33 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-23 17:00 [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Jonathan Cameron
2008-07-23 17:08 ` [Patch 1/4] Industrialio Core Jonathan Cameron
2008-07-23 18:31   ` Anton Vorontsov
2008-07-24 10:12     ` [spi-devel-general] " Jonathan Cameron
2008-07-23 19:42   ` Ben Dooks
2008-07-24 10:33     ` Jonathan Cameron
2008-07-24  9:01   ` Eric Piel
2008-07-24 11:56     ` [spi-devel-general] " Jonathan Cameron
2008-07-23 17:11 ` [Patch 2/4] Max1363 (and similar) ADCs Jonathan Cameron
2008-07-23 17:14 ` [Patch 3/4] ST LIS3L02DQ accelerometer Jonathan Cameron
2008-07-23 17:07   ` Alan Cox
2008-07-23 17:44     ` Jonathan Cameron
2008-07-23 17:17 ` [Patch 4/4] VTI SCA3000 Series accelerometer driver Jonathan Cameron
2008-07-23 17:48 ` [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Henrique de Moraes Holschuh
2008-07-24  9:44   ` Eric Piel
2008-07-24 10:08     ` Ben Dooks
2008-07-24 12:20       ` [spi-devel-general] " Jonathan Cameron
2008-07-24 12:13     ` Jonathan Cameron
2008-07-24 12:37       ` Eric Piel
2008-07-24 12:45         ` Jonathan Cameron
2008-07-24 13:26           ` Dmitry Torokhov
2008-07-24 13:39             ` Jonathan Cameron
2008-07-23 18:36 ` David Brownell
2008-07-23 19:19 ` [spi-devel-general] " Ben Dooks
2008-07-24  7:41   ` Hans J. Koch
2008-07-24  9:19     ` Alan Cox
2008-07-24 12:28       ` Jonathan Cameron
2008-07-24 10:01     ` Ben Dooks
2008-07-24 15:38       ` Hans J. Koch
2008-07-24 16:11         ` Jonathan Cameron
2008-07-24 12:32   ` Jonathan Cameron
2008-07-23 19:33 ` Ben Dooks [this message]
2008-07-24 17:57 ` [Patch 5/4] IndustrialIO subsystem very early cut of documentation + userspace demo Jonathan Cameron
2008-07-24 22:25 ` [Patch 0/4] IndustrialIO subsystem (ADCs, accelerometers etc) Jan Engelhardt
2008-07-25 11:12   ` Jonathan Cameron
2008-07-25 11:28     ` 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=20080723193334.GD26938@trinity.fluff.org \
    --to=ben-linux@fluff.org \
    --cc=Jonathan.Cameron@gmail.com \
    --cc=bn@niasdigital.com \
    --cc=david-b@pacbell.net \
    --cc=dtor@mail.ru \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox