Re: [RFC/PATCH 0/6] iio: Add sensorhub driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On September 3, 2014 3:55:44 PM GMT+01:00, Karol Wrona <k.wrona@xxxxxxxxxxx> wrote:
>Hello,
>
>This patchset adds support for sensorhub. It is an external mcu which
>manages
>and collects data from several sensors i.e. on Galaxy Gear 2 watch.
>
>It contains:
>- spi driver for sensorhub device
>- DT binding for the device
>- IIO common utils for ssp sensors, a trigger module
>- IIO accelerometer driver
>- IIO gyroscope driver
>
>Generally this is an attempt to generalize sensors handling on some
>Samsung
>boards which have multiple sensors IC and also sensorhub does some data
>processing itself.
>
>I would like to get your opinion about such solution. The idea is that
>data communication layer gives control and data to proper IIO sensor
>devices.
>In this case I chose that sensor drivers are platform ones represented
>by
>child nodes of sensorhub in DT. These compatibles are used mainly to
>match
>sensor to driver. For example at this stage there is one accelerometer
>but on
>other board can have different one with changed data format etc. In
>this case
>ssp_accel_sensor driver could handle several physical devices of accel
>class.
>Unfortunately the firmware gives only an information about used sensor
>type,
>the driver can find out that there is an accelerometer on board but
>nothing
>specific about the sensor.
Will look at this later... In the meantime..
>
>Other question:
>The sensorhub can implement some devices which are non common for IIO
>and hard
>to standardise. These ones need two way communication (raw write will
>not be
>proper for that) and can produce data packets with flexible size to
>2KB).
>I'm wondering if it is worth to look for solution in IIO and implement
>something like IIO_BULK sensor with no standard channel description
>or solve this problem using cdev. This is the reason why the part of
>the 
>patchset is intended to be placed in misc.
Out of curiosity, what are these other sensors, roughly?  If they are popular I am
 sure there will be more out there soon!  Ideally we would work out how to standardize these. So convince is it can't be
 done! 
>
>Regards,
>Karol
>
>Karol Wrona (6):
>  iio:sensorhub: Add sensorhub common library
>  misc: sensorhub: Add sensorhub driver
>  sensorhub: Add sensorhub bindings
>  iio: sensorhub: Add sensorhub iio commons
>  iio: sensorhub: Add sensorhub accelerometer sensor
>  iio: sensorhub: Add sensorhub gyroscope sensor
>
> .../devicetree/bindings/misc/sensorhub.txt         |   51 ++
> drivers/iio/accel/Makefile                         |    2 +
> drivers/iio/accel/ssp_accel_sensor.c               |  240 ++++++
> drivers/iio/common/Kconfig                         |    1 +
> drivers/iio/common/Makefile                        |    1 +
> drivers/iio/common/ssp_sensors/Kconfig             |   15 +
> drivers/iio/common/ssp_sensors/Makefile            |    6 +
> .../iio/common/ssp_sensors/ssp-sensor-trigger.c    |   92 +++
> drivers/iio/common/ssp_sensors/ssp_iio.c           |   35 +
> drivers/iio/common/ssp_sensors/ssp_iio_sensor.h    |   62 ++
> drivers/iio/gyro/Makefile                          |    2 +
> drivers/iio/gyro/ssp_gyro_sensor.c                 |  225 ++++++
> drivers/misc/Kconfig                               |    1 +
> drivers/misc/Makefile                              |    1 +
> drivers/misc/sensorhub/Kconfig                     |   13 +
> drivers/misc/sensorhub/Makefile                    |    8 +
> drivers/misc/sensorhub/ssp.h                       |  323 ++++++++
> drivers/misc/sensorhub/ssp_data.c                  |   61 ++
>drivers/misc/sensorhub/ssp_dev.c                   |  782
>++++++++++++++++++++
>drivers/misc/sensorhub/ssp_firmware.c              |  571
>++++++++++++++
>drivers/misc/sensorhub/ssp_spi.c                   |  700
>++++++++++++++++++
> include/linux/iio/common/ssp_sensors.h             |   82 ++
> 22 files changed, 3274 insertions(+)
>create mode 100644 Documentation/devicetree/bindings/misc/sensorhub.txt
> create mode 100644 drivers/iio/accel/ssp_accel_sensor.c
> create mode 100644 drivers/iio/common/ssp_sensors/Kconfig
> create mode 100644 drivers/iio/common/ssp_sensors/Makefile
> create mode 100644 drivers/iio/common/ssp_sensors/ssp-sensor-trigger.c
> create mode 100644 drivers/iio/common/ssp_sensors/ssp_iio.c
> create mode 100644 drivers/iio/common/ssp_sensors/ssp_iio_sensor.h
> create mode 100644 drivers/iio/gyro/ssp_gyro_sensor.c
> create mode 100644 drivers/misc/sensorhub/Kconfig
> create mode 100644 drivers/misc/sensorhub/Makefile
> create mode 100644 drivers/misc/sensorhub/ssp.h
> create mode 100644 drivers/misc/sensorhub/ssp_data.c
> create mode 100644 drivers/misc/sensorhub/ssp_dev.c
> create mode 100644 drivers/misc/sensorhub/ssp_firmware.c
> create mode 100644 drivers/misc/sensorhub/ssp_spi.c
> create mode 100644 include/linux/iio/common/ssp_sensors.h

-- 
Sent from my Android phone with K-9 Mail. Please excuse my brevity.
--
To unsubscribe from this list: send the line "unsubscribe linux-iio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux