Re: [PATCH] lis3lv02d: Add STMicroelectronics lis33ldlh digital
From: Arnd Bergmann
Date: Thu Jan 19 2012 - 09:27:57 EST
On Wednesday 18 January 2012, Andi wrote:
> What do you mean with "kernel-wide policy for accelerometer drivers"?
> As far as I know, accelerometer drivers are written between the i2c driver and the
> input driver.
> The input driver provides already some accelerometer specific event types, ABS_X, ABS_Y, ABS_Z,
> in your opinion isn't it enough?
> If you mean something like collecting common properties like g range or frequency or whatever in a
> standard interface, then I think that accelerometers are quite different as devices and sometimes
> it could be difficult to arrange a common interface.
The problem is that we have some drivers using the input subsystem, some
drivers using the iio subsystem and some drivers using none of these but
interfacing with user space using some homegrown method, see my list:
> > $ git grep -l accelerometer drivers/ | manual_grep
> > drivers/hwmon/applesmc.c
> > (one hwmon sysfs attribute for x/y/z)
> > drivers/input/misc/adxl34x.c
> > (lots of sysfs attributes, input_report_key)
> > drivers/input/misc/cma3000_d0x.c
> > (input_report_abs)
> > drivers/input/misc/kxtj9.c
> > (input_report_abs, plus one aux sysfs attribute)
> > drivers/macintosh/ams/ams-core.c
> > (one sysfs attribute for x/y/z)
> > drivers/misc/lis3lv02d/
> > (multiple sysfs attributes)
> > drivers/platform/x86/hdaps.c
> > (multiple sysfs attributes, only x/y)
> > drivers/platform/x86/hp_accel.c
> > (hooks into drivers/misc/lis3lv02d/)
> > drivers/staging/iio/accel/kxsd9.c
> > (iio)
> > drivers/staging/iio/accel/sca3000_core.c
> > (iio plus extra attributes)
If all drivers were using the input subsystem in the way you describe,
that would be a good solution, but right now the majority of the
drivers don't do this.
Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/