All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH 0/6] staging:iio:imu driver merges, fixes and new features.
@ 2010-09-11 14:58 Jonathan Cameron
  2010-09-11 14:58 ` [PATCH 1/6] staging:iio:adis16350 add non burst buffer fill and fix burst logic Jonathan Cameron
                   ` (6 more replies)
  0 siblings, 7 replies; 12+ messages in thread
From: Jonathan Cameron @ 2010-09-11 14:58 UTC (permalink / raw)
  To: linux-iio; +Cc: Michael.Hennerich, Robin.Getz, manuel.stahl, Jonathan Cameron

The first 4 are repeat postings but are now complete (oops).

Cleaning up this driver set has been on my todo list for a while
and I've finally had a bit of time to see what could be done to
reduce the huge amount of repeat code found in the 3 IMU drivers.

This is an RFC for two reasons. Firstly I haven't tested this as
fully yet and will do so before merging.  I will do a whole
lot more testing on the adis16350 that I have.  Coverage of the
adis16300 and adis16400 would be great if anyone can do so.
I also haven't done full testing on all the build combinations yet.
(there is at least one known issue to clean up!)
Secondly the event patch in particularly has some elements not seen
elsewhere before that I would like people to consider.

Right now, only the adis16350 and adis16360 famillies are supported
by the event support patch.  I'll add support for the other parts
at a later date unless someone else beats me to it (hint!).  Note
this patch now actually contains the adis16350_event.c file that
was missing previously.

There is one effective change to all but the adis16400 ABIs.
When we originally proposed the [m]_<type>_<modifier>_en
attributes for scan modes I very carefully stated that the index
[m] for a given device would not necessarily cover all values between
0 and the highest present.  It was exactly this possible driver
merge that motivated that arguement. By allowing indexes to be
missed, we can have single drivers supporting various subsets of
sensor elements.  Here the devices are such that some interleaving
is possible.  This reduces the storage required for the event code,
so I have done it where possible.  Note the addition
of new devices to this driver in future may change this again!

As ever, all comments welcome.  Any tested-bys with a part number
would be particularly welcome.

Should be trivial to add the adis16367 and adis16385 to this driver.
Does anyone have one of these parts to test?

Jonathan Cameron (6):
  staging:iio:adis16350 add non burst buffer fill and fix burst logic
  staging:iio:adis16350 move datardy trigger to straight interrupt.
  staging:iio:adis16350 Add optional event support
  staging:iio:adis16350 add missing registration of temp_offset attr
  staging:iio:adis16300 merge into adis16350 driver
  staging:iio:adis16400 merge into adis16350 driver

 drivers/staging/iio/adc/adc.h               |    8 +-
 drivers/staging/iio/gyro/gyro.h             |   31 +-
 drivers/staging/iio/imu/Kconfig             |   30 +-
 drivers/staging/iio/imu/Makefile            |    9 +-
 drivers/staging/iio/imu/adis16300.h         |  184 -------
 drivers/staging/iio/imu/adis16300_core.c    |  756 ---------------------------
 drivers/staging/iio/imu/adis16300_ring.c    |  220 --------
 drivers/staging/iio/imu/adis16300_trigger.c |  125 -----
 drivers/staging/iio/imu/adis16350.h         |  117 ++++-
 drivers/staging/iio/imu/adis16350_core.c    |  287 +++++++++--
 drivers/staging/iio/imu/adis16350_event.c   |  499 ++++++++++++++++++
 drivers/staging/iio/imu/adis16350_ring.c    |  167 +++++-
 drivers/staging/iio/imu/adis16350_trigger.c |   40 +-
 drivers/staging/iio/imu/adis16400.h         |  208 --------
 drivers/staging/iio/imu/adis16400_core.c    |  752 --------------------------
 drivers/staging/iio/imu/adis16400_ring.c    |  231 --------
 drivers/staging/iio/sysfs.h                 |   17 +-
 17 files changed, 1067 insertions(+), 2614 deletions(-)
 delete mode 100644 drivers/staging/iio/imu/adis16300.h
 delete mode 100644 drivers/staging/iio/imu/adis16300_core.c
 delete mode 100644 drivers/staging/iio/imu/adis16300_ring.c
 delete mode 100644 drivers/staging/iio/imu/adis16300_trigger.c
 create mode 100644 drivers/staging/iio/imu/adis16350_event.c
 delete mode 100644 drivers/staging/iio/imu/adis16400.h
 delete mode 100644 drivers/staging/iio/imu/adis16400_core.c
 delete mode 100644 drivers/staging/iio/imu/adis16400_ring.c

-- 
1.7.2.2

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

end of thread, other threads:[~2010-09-22 10:17 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-11 14:58 [RFC PATCH 0/6] staging:iio:imu driver merges, fixes and new features Jonathan Cameron
2010-09-11 14:58 ` [PATCH 1/6] staging:iio:adis16350 add non burst buffer fill and fix burst logic Jonathan Cameron
2010-09-11 14:58 ` [PATCH 2/6] staging:iio:adis16350 move datardy trigger to straight interrupt Jonathan Cameron
2010-09-11 14:58 ` [PATCH 3/6] staging:iio:adis16350 Add optional event support Jonathan Cameron
2010-09-11 14:58 ` [PATCH 4/6] staging:iio:adis16350 add missing registration of temp_offset attr Jonathan Cameron
2010-09-11 14:58 ` [PATCH 5/6] staging:iio:adis16300 merge into adis16350 driver Jonathan Cameron
2010-09-18 16:06   ` Jonathan Cameron
2010-09-11 14:58 ` [PATCH 6/6] staging:iio:adis16400 " Jonathan Cameron
2010-09-11 15:05   ` Jonathan Cameron
2010-09-22  8:47 ` [RFC PATCH 0/6] staging:iio:imu driver merges, fixes and new features Manuel Stahl
2010-09-22 10:12   ` Jonathan Cameron
2010-09-22 10:17     ` Jonathan Cameron

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.