public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Accelerometer, Gyros and ADC's etc within the kernel.
@ 2008-05-20 10:04 Jonathan Cameron
  2008-05-20 11:28 ` Jean Delvare
                   ` (2 more replies)
  0 siblings, 3 replies; 32+ messages in thread
From: Jonathan Cameron @ 2008-05-20 10:04 UTC (permalink / raw)
  To: linux-kernel; +Cc: LM Sensors, spi-devel-general

This email is basically a request for opinions on how and where such sensors
should be integrated into the kernel.

To set the scene...

Increasing numbers of embedded devices are being supplied attached MEMS
devices (www.xbow.com imote2 etc). Along with more traditional sensors such
as ADC's not being used for hardware monitoring, these do not really 
seem to
fit with in an particular subsystem of the kernel.  A previous 
discussion on
lkml in 2006 considered the accelerometers to be found within some laptop
hard drives, but I haven't been able to track down any more general 
discussions
of such non hardware monitoring sensors.

The obvious possibilities are:

* To place the various drivers within the spi / i2c etc subsystems as 
relevant.

* To place within the hwmon subsystem as this is probably closest.
(there is already at least one straight ADC driver in hwmon)

* To create a new subsystem, or perhaps merely sysfs class to contain these
  elements.

Typical requirements within an application include simply polling for 
current
readings, and using device triggered interrupts to grab data 
continuously to a
ring buffer, for collection by suitable userspace code.  Obviously it 
would be
desirable to standardize sysfs controls for various calibration 
parameters as
much as possible across the various devices.

Any other suggestions welcome!

To illustrate the sort of devices here are a few I have drivers written 
for or will
shortly be writing  (some submitted to hwmon and spi mailing lists, some 
not
finished as of yet)

ST Micro LIS3L02DQ 3D accelerometer.  SPI device, no buffering, 
interrupt pin
raised high on new data being available. Currently the driver assumes, if
interrupts are enabled, that this is connected to a specified gpio.
(http://www.st.com/stonline/books/pdf/docs/10175.pdf)

VTI SCA3000 E05 3D accelerometer equiped with substantial ring buffer. SPI
device.  Can operate either in buffered or direct mode.  In buffered 
mode, interrupts
can be used to indicate when the ring buffer is 3/4 full triggering a 
download to
a larger ring buffer in the kernel if necessary.
(http://www.vti.fi/en/products-solutions/products/accelerometers/sca3000-accelerometers/)

Analog Devices ADIS16350 combined 3D accelerometer and gyro unit.  SPI 
device.
(http://www.analog.com/en/prod/0,,764_801_ADIS16350%2C00.html)

Maxim MAX1363, MAX1238 ADC's.  I2C devices. Some SPI ADC's 
(www.analog.com for
examples)

Would be nice if practical to allow the framework to include RS232 
devices such
as those from www.xsens.com, www.isense.com and others.

--
Jonathan Cameron



^ permalink raw reply	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2008-06-28 15:34 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-20 10:04 Accelerometer, Gyros and ADC's etc within the kernel Jonathan Cameron
2008-05-20 11:28 ` Jean Delvare
2008-05-20 21:40   ` Hans J. Koch
2008-05-21 10:04     ` Jonathan Cameron
2008-05-21 13:20       ` Jean Delvare
2008-05-21 13:49   ` Dmitry Torokhov
2008-05-21 14:09     ` Henrique de Moraes Holschuh
2008-05-27 17:16     ` [spi-devel-general] " Ben Dooks
2008-05-27 19:01       ` Dmitry Torokhov
2008-05-22  0:52   ` David Brownell
2008-05-22  9:35     ` [spi-devel-general] " Jonathan Cameron
2008-05-26 16:23       ` Jonathan Cameron
2008-06-26 18:01   ` Accelerometer etc subsystem (Update on progress) Jonathan Cameron
2008-06-26 18:26     ` Jonathan Cameron
2008-06-27  2:39     ` Randy Dunlap
2008-06-27  3:29     ` Ben Nizette
2008-06-27  9:45       ` [lm-sensors] " Jonathan Cameron
2008-06-28  8:34         ` Ben Nizette
2008-06-28 15:34           ` Jonathan Cameron
2008-05-20 17:50 ` Accelerometer, Gyros and ADC's etc within the kernel mark gross
2008-05-21  9:40   ` [spi-devel-general] " Jonathan Cameron
2008-05-27 15:43     ` mark gross
2008-05-29 11:57       ` Jonathan Cameron
2008-05-22  0:53   ` David Brownell
2008-05-27 15:56     ` mark gross
2008-05-27 23:42       ` David Brownell
2008-05-27 16:44 ` [spi-devel-general] " Anton Vorontsov
2008-05-27 16:50   ` Ben Dooks
2008-05-27 17:01     ` Anton Vorontsov
2008-05-27 18:00     ` Jonathan Cameron
2008-05-27 18:12       ` Ben Dooks
2008-05-27 17:59   ` Jonathan Cameron

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox