linux-iio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/3] Add PAT9125 optical tracker driver
@ 2019-04-23 10:40 Alexandre Mergnat
  2019-04-23 10:40 ` [PATCH v2 1/3] dt-bindings: Add pixart vendor Alexandre Mergnat
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Alexandre Mergnat @ 2019-04-23 10:40 UTC (permalink / raw)
  To: robh+dt, mark.rutland, jic23, knaack.h, lars, pmeerw
  Cc: linux-kernel, linux-iio, baylibre-upstreaming, Alexandre Mergnat

PixArt Imaging PAT9125 is a miniature low power optical navigation chip using
LASER light source enabling digital surface tracking.

This device driver use IIO API to provide ponctual and/or buffered data.
The data is the delta value between two position traveled, depend on
CPI (Counts Per Inch) resolution setting chosen. The retrived data is
composed by two values, delta on the X and Y axis.

The devece support configuration through module parameter interface.

This patchset :
- Update vendor prefix
- Add the bindings for this device
- Add the device driver
- Add directory for optical tracker devices

Change since v1:
- Fix typo
- Rename some defines / variables
- Remove I2C client from driver structure
- Change type of delta_x and delta_y from s16 to s32 to simplify signed operations
- Add module parameter for axis resolution
- Replace "IIO_MOD_X_AND_Y" by "IIO_MOD_X" and "IIO_MOD_Y"
- Add sign extention macro
- Improve read value algorithm to avoid data loss
- Implement a trigger handler function which can work with any IIO trigger, independently of it own GPIO IRQ, to match with IIO requirement / behavior
- Replace iio push event function by iio trigger poll in GPIO IRQ handler
- Use triggered_buffer helpers to replace kfifo use, setup buffer, implement enable/disable setup buffer operations, IIO trigger allocation and reenable operations
- Remove useless "goto"
- Change GPIO IRQ handler from planified thread to IRQ thread
- Change GPIO IRQ trigger from low level and one shot to falling edge
- Add device unregister and buffer cleanup to driver remove function

Alexandre Mergnat (3):
  dt-bindings: Add pixart vendor
  dt-bindings: iio: ot: Add docs pat9125
  iio: Add PAT9125 optical tracker sensor

 .../devicetree/bindings/iio/ot/pat9125.txt    |  18 +
 .../devicetree/bindings/vendor-prefixes.txt   |   1 +
 drivers/iio/Kconfig                           |   1 +
 drivers/iio/Makefile                          |   1 +
 drivers/iio/ot/Kconfig                        |  16 +
 drivers/iio/ot/Makefile                       |   6 +
 drivers/iio/ot/pat9125.c                      | 487 ++++++++++++++++++
 7 files changed, 530 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/iio/ot/pat9125.txt
 create mode 100644 drivers/iio/ot/Kconfig
 create mode 100644 drivers/iio/ot/Makefile
 create mode 100644 drivers/iio/ot/pat9125.c

-- 
2.17.1


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

end of thread, other threads:[~2019-05-17  2:36 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-23 10:40 [PATCH v2 0/3] Add PAT9125 optical tracker driver Alexandre Mergnat
2019-04-23 10:40 ` [PATCH v2 1/3] dt-bindings: Add pixart vendor Alexandre Mergnat
2019-05-17  2:35   ` Rob Herring
2019-04-23 10:40 ` [PATCH v2 2/3] dt-bindings: iio: ot: Add docs pat9125 Alexandre Mergnat
2019-04-23 11:01   ` Peter Meerwald-Stadler
2019-04-23 10:40 ` [PATCH v2 3/3] iio: Add PAT9125 optical tracker sensor Alexandre Mergnat
2019-04-23 11:33   ` Peter Meerwald-Stadler
2019-04-23 14:06     ` Alexandre
2019-04-27 12:11       ` Jonathan Cameron
2019-04-27 12:52     ` Jonathan Cameron

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).