From: "Baluta, Teodora" <teodora.baluta@intel.com>
To: "jic23@kernel.org" <jic23@kernel.org>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-iio@vger.kernel.org" <linux-iio@vger.kernel.org>
Subject: Re: [RFC PATCH 0/3] Introduce IIO interface for fingerprint sensors
Date: Mon, 8 Dec 2014 14:10:41 +0000 [thread overview]
Message-ID: <1418047828.18463.10.camel@bebop> (raw)
In-Reply-To: <5481153B.4070609@kernel.org>
SGVsbG8sDQoNCk9uIFZpLCAyMDE0LTEyLTA1IGF0IDAyOjE1ICswMDAwLCBKb25hdGhhbiBDYW1l
cm9uIHdyb3RlOg0KPiBPbiAwNC8xMi8xNCAxMzowMCwgVGVvZG9yYSBCYWx1dGEgd3JvdGU6DQo+
ID4gVGhpcyBwYXRjaHNldCBhZGRzIHN1cHBvcnQgZm9yIGZpbmdlcnByaW50IHNlbnNvcnMgdGhy
b3VnaCB0aGUgSUlPIGludGVyZmFjZS4NCj4gPiBUaGlzIHdheSB1c2Vyc3BhY2UgYXBwbGljYXRp
b25zIGNvbGxlY3QgaW5mb3JtYXRpb24gaW4gYSB1bmlmb3JtIHdheS4gQWxsDQo+ID4gcHJvY2Vz
c2luZyB3b3VsZCBiZSBkb25lIGluIHRoZSB1cHBlciBsYXllcnMgYXMgc3VnZ2VzdGVkIGluIFsw
XS4NCj4gPiANCj4gPiBJbiBvcmRlciB0byB0ZXN0IG91dCB0aGlzIHByb3Bvc2FsLCBhIG1pbmlt
YWwgaW1wbGVtZW50YXRpb24gZm9yIFVQRUsncw0KPiA+IFRvdWNoQ2hpcCBGaW5nZXJwcmludCBT
ZW5zb3IgdmlhIFVTQiBpcyBhbHNvIGF2YWlsYWJsZS4gQWx0aG91Z2ggdGhlcmUgaXMgYW4NCj4g
PiBleGlzdGluZyBpbXBsZW1lbnRhdGlvbiBpbiB1c2Vyc3BhY2UgZm9yIFVTQiBmaW5nZXJwcmlu
dCBkZXZpY2VzLCBpbmNsdWRpbmcgdGhpcw0KPiA+IHBhcnRpY3VsYXIgZGV2aWNlLCB0aGUgZHJp
dmVyIHJlcHJlc2VudHMgYSBwcm9vZiBvZiBjb25jZXB0IG9mIGhvdyBmaW5nZXJwcmludA0KPiA+
IHNlbnNvcnMgY291bGQgYmUgaW50ZWdyYXRlZCBpbiB0aGUgSUlPIGZyYW1ld29yayByZWdhcmRs
ZXNzIG9mIHRoZSB1c2VkIGJ1cy4gRm9yDQo+ID4gbG93ZXIgcG93ZXIgcmVxdWlyZW1lbnRzLCB0
aGUgU1BJIGJ1cyBpcyBwcmVmZXJyZWQgYW5kIGEga2VybmVsIGRyaXZlcg0KPiA+IGltcGxlbWVu
dGF0aW9uIG1ha2VzIG1vcmUgc2Vuc2UuDQo+IA0KPiBTbyB3aHkgbm90IHY0bD8gIFRoZXNlIGFy
ZSBlZmZlY3RpdmVseSBpbWFnZSBzZW5zb3JzLi4gDQoNCldlbGwsIGhlcmUncyB3aHkgSSBkb24n
dCB0aGluayB2NGwgd291bGQgYmUgdGhlIGJlc3Qgb3B0aW9uOg0KDQotIGFuIGltYWdlIHNjYW5u
ZXIgY291bGQgYmUgaW1wbGVtZW50ZWQgaW4gdGhlIHY0bCBzdWJzeXN0ZW0sIGJ1dCBpdA0Kc2Vl
bXMgZmFyIG1vcmUgY29tcGxpY2F0ZWQgZm9yIGEgc2ltcGxlIGZpbmdlcnByaW50IHNjYW5uZXIg
LSBpdCB1c3VhbGx5DQpoYXMgZHJpdmVycyBmb3Igd2ViY2FtcywgVFZzIG9yIHZpZGVvIHN0cmVh
bWluZyBkZXZpY2VzLiBUaGUgdjRsDQpzdWJzeXN0ZW0gKHdpdGggYWxsIGl0cyBzdXBwb3J0IGZv
ciBjb2xvcnNwYWNlLCBkZWNvZGVycywgaW1hZ2UNCmNvbXByZXNzaW9uLCBmcmFtZSBjb250cm9s
KSBzZWVtcyBhIGJpdCBvZiBhbiBvdmVya2lsbCBmb3IgYSB2ZXJ5DQpzdHJhaWdodGZvcndhcmQg
ZmluZ2VycHJpbnQgaW1hZ2luZyBzZW5zb3IuDQoNCi0gYSBmaW5nZXJwcmludCBkZXZpY2UgY291
bGQgYWxzbyBzZW5kIG91dCBhIHByb2Nlc3NlZCBpbmZvcm1hdGlvbiwgbm90DQpqdXN0IHRoZSBp
bWFnZSBvZiBhIGZpbmdlcnByaW50LiBUaGlzIG1lYW5zIHRoYXQgdGhlIHByb2Nlc3NpbmcgaXMg
ZG9uZQ0KaW4gaGFyZHdhcmUgLSB0aGUgVVBFSyBUb3VjaFN0cmlwIGNoaXBzZXQgaW4gbGliZnBy
aW50IGhhcyB0aGlzIGJlaGF2aW9yDQooc2VlIFswXSkuIFNvLCB0aGUgSUlPIGZyYW1ld29yayB3
b3VsZCBzdXBwb3J0IGEgdW5pZm9ybSB3YXkgb2YgaGFuZGxpbmcNCmZpbmdlcnByaW50IGRldmlj
ZXMgdGhhdCBlaXRoZXIgZG8gcHJvY2Vzc2luZyBpbiBzb2Z0d2FyZSBvciBpbg0KaGFyZHdhcmUu
DQoNClRoZSB3YXkgSSBzZWUgaXQgbm93LCBmb3IgcHJvY2Vzc2VkIGZpbmdlcnByaW50IGluZm9y
bWF0aW9uLCBhbiBJSU8NCmRldmljZSBjb3VsZCBoYXZlIGFuIElJT19GSU5HRVJQUklOVCBjaGFu
bmVsIHdpdGggYSBtb2RpZmllciBhbmQgb25seQ0KdGhlIHNlbnNpdGl2aXR5IHRocmVzaG9sZCBh
dHRyaWJ1dGUgc2V0LiBXZSB3b3VsZCBhbHNvIG5lZWQgdHdvDQp0cmlnZ2Vyczogb25lIGZvciBl
bnJvbGxtZW50IGFuZCBvbmUgZm9yIHRoZSB2ZXJpZmljYXRpb24gbW9kZSB0bw0KY29udHJvbCB0
aGUgZGV2aWNlIGZyb20gYSB1c2Vyc3BhY2UgYXBwbGljYXRpb24uDQoNClRoYW5rcywNClRlb2Rv
cmENCg0KWzBdIGh0dHA6Ly93d3cuZnJlZWRlc2t0b3Aub3JnL3dpa2kvU29mdHdhcmUvZnByaW50
L2xpYmZwcmludC91cGVrdHMvDQoNCg0KPiA+IA0KPiA+IEEgc3lzZnMgdHJpZ2dlciBpcyBlbmFi
bGVkIGFuZCB0aGUgZGV2aWNlIHN0YXJ0cyBzY2FubmluZy4gQXMgc29vbiBhcyBhbiBpbWFnZQ0K
PiA+IGlzIGF2YWlsYWJsZSBpdCBpcyB3cml0dGVuIGluIHRoZSBjaGFyYWN0ZXIgZGV2aWNlIC9k
ZXYvaWlvOmRldmljZVguDQo+ID4gDQo+ID4gVXNlcnNwYWNlIGFwcGxpY2F0aW9ucyB3aWxsIGJl
IGFibGUgdG8gY2FsY3VsYXRlIHRoZSBleHBlY3RlZCBpbWFnZSBzaXplIHVzaW5nDQo+ID4gdGhl
IGZpbmdlcnByaW50IGF0dHJpYnV0ZXMgaGVpZ2h0LCB3aWR0aCBhbmQgYml0IGRlcHRoLiBPdGhl
ciBhdHRyaWJ1dGVzDQo+ID4gaW50cm9kdWNlZCBmb3IgdGhlIGZpbmdlcnByaW50IGNoYW5uZWwg
aW4gSUlPIHJlcHJlc2VudCBpbmZvcm1hdGlvbiB0aGF0IGFpZHMgaW4NCj4gPiB0aGUgZmluZ2Vy
cHJpbnQgaW1hZ2UgcHJvY2Vzc2luZy4gQmVzaWRlcyB0aGVzZSwgdGhlIHByb3Bvc2VkIGludGVy
ZmFjZSBvZmZlcnMNCj4gPiB1c2Vyc3BhY2UgYSB3YXkgdG8gcmVhZCBhIGZlZWRiYWNrIGFmdGVy
IGEgc2NhbiAobGlrZSB0aGUgc3dpcGUgd2FzIHRvbyBzbG93IG9yDQo+ID4gdG9vIGZhc3QpIHRo
cm91Z2ggYSBtb2RpZmllZCBmaW5nZXJwcmludF9zdGF0dXMgY2hhbm5lbC4NCj4gPiANCj4gPiBb
MF0gaHR0cDovL3d3dy5zcGluaWNzLm5ldC9saXN0cy9saW51eC1paW8vbXNnMTE0NjMuaHRtbA0K
PiA+IA0KPiA+IFRlb2RvcmEgQmFsdXRhICgzKToNCj4gPiAgIGlpbzogY29yZTogYWRkIHN1cHBv
cnQgZm9yIGZpbmdlcnByaW50IGRldmljZXMNCj4gPiAgIGlpbzogY29yZTogY2hhbmdlIGNoYW5u
ZWwncyBzdG9yYWdlYml0cy9yZWFsYml0cyB0byB1MzINCj4gPiAgIGlpbzogZmluZ2VycHJpbnQ6
IGFkZCBmaW5nZXJwcmludCBzZW5zb3IgdmlhIFVTQg0KPiA+IA0KPiA+ICBEb2N1bWVudGF0aW9u
L0FCSS90ZXN0aW5nL3N5c2ZzLWJ1cy1paW8gfCAgNTEgKysrDQo+ID4gIGRyaXZlcnMvaWlvL0tj
b25maWcgICAgICAgICAgICAgICAgICAgICB8ICAgMSArDQo+ID4gIGRyaXZlcnMvaWlvL01ha2Vm
aWxlICAgICAgICAgICAgICAgICAgICB8ICAgMSArDQo+ID4gIGRyaXZlcnMvaWlvL2ZpbmdlcnBy
aW50L0tjb25maWcgICAgICAgICB8ICAxNSArDQo+ID4gIGRyaXZlcnMvaWlvL2ZpbmdlcnByaW50
L01ha2VmaWxlICAgICAgICB8ICAgNSArDQo+ID4gIGRyaXZlcnMvaWlvL2ZpbmdlcnByaW50L2Zw
X3RjLmMgICAgICAgICB8IDE2MiArKysrKysrKysNCj4gPiAgZHJpdmVycy9paW8vZmluZ2VycHJp
bnQvZnBfdGMuaCAgICAgICAgIHwgIDIyICsrDQo+ID4gIGRyaXZlcnMvaWlvL2ZpbmdlcnByaW50
L2ZwX3RjX3VzYi5jICAgICB8IDYxOCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKw0K
PiA+ICBkcml2ZXJzL2lpby9maW5nZXJwcmludC9mcF90Y191c2IuaCAgICAgfCAxNDQgKysrKysr
KysNCj4gPiAgZHJpdmVycy9paW8vaW5kdXN0cmlhbGlvLWNvcmUuYyAgICAgICAgIHwgICA5ICsN
Cj4gPiAgaW5jbHVkZS9saW51eC9paW8vaWlvLmggICAgICAgICAgICAgICAgIHwgIDExICstDQo+
ID4gIGluY2x1ZGUvbGludXgvaWlvL3R5cGVzLmggICAgICAgICAgICAgICB8ICAxMCArDQo+ID4g
IDEyIGZpbGVzIGNoYW5nZWQsIDEwNDcgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkNCj4g
PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvaWlvL2ZpbmdlcnByaW50L0tjb25maWcNCj4g
PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvaWlvL2ZpbmdlcnByaW50L01ha2VmaWxlDQo+
ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL2lpby9maW5nZXJwcmludC9mcF90Yy5jDQo+
ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL2lpby9maW5nZXJwcmludC9mcF90Yy5oDQo+
ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL2lpby9maW5nZXJwcmludC9mcF90Y191c2Iu
Yw0KPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9paW8vZmluZ2VycHJpbnQvZnBfdGNf
dXNiLmgNCj4gPiANCj4gDQoNCg==
WARNING: multiple messages have this Message-ID (diff)
From: "Baluta, Teodora" <teodora.baluta@intel.com>
To: "jic23@kernel.org" <jic23@kernel.org>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-iio@vger.kernel.org" <linux-iio@vger.kernel.org>
Subject: Re: [RFC PATCH 0/3] Introduce IIO interface for fingerprint sensors
Date: Mon, 8 Dec 2014 14:10:41 +0000 [thread overview]
Message-ID: <1418047828.18463.10.camel@bebop> (raw)
In-Reply-To: <5481153B.4070609@kernel.org>
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="utf-8", Size: 4311 bytes --]
Hello,
On Vi, 2014-12-05 at 02:15 +0000, Jonathan Cameron wrote:
> On 04/12/14 13:00, Teodora Baluta wrote:
> > This patchset adds support for fingerprint sensors through the IIO interface.
> > This way userspace applications collect information in a uniform way. All
> > processing would be done in the upper layers as suggested in [0].
> >
> > In order to test out this proposal, a minimal implementation for UPEK's
> > TouchChip Fingerprint Sensor via USB is also available. Although there is an
> > existing implementation in userspace for USB fingerprint devices, including this
> > particular device, the driver represents a proof of concept of how fingerprint
> > sensors could be integrated in the IIO framework regardless of the used bus. For
> > lower power requirements, the SPI bus is preferred and a kernel driver
> > implementation makes more sense.
>
> So why not v4l? These are effectively image sensors..
Well, here's why I don't think v4l would be the best option:
- an image scanner could be implemented in the v4l subsystem, but it
seems far more complicated for a simple fingerprint scanner - it usually
has drivers for webcams, TVs or video streaming devices. The v4l
subsystem (with all its support for colorspace, decoders, image
compression, frame control) seems a bit of an overkill for a very
straightforward fingerprint imaging sensor.
- a fingerprint device could also send out a processed information, not
just the image of a fingerprint. This means that the processing is done
in hardware - the UPEK TouchStrip chipset in libfprint has this behavior
(see [0]). So, the IIO framework would support a uniform way of handling
fingerprint devices that either do processing in software or in
hardware.
The way I see it now, for processed fingerprint information, an IIO
device could have an IIO_FINGERPRINT channel with a modifier and only
the sensitivity threshold attribute set. We would also need two
triggers: one for enrollment and one for the verification mode to
control the device from a userspace application.
Thanks,
Teodora
[0] http://www.freedesktop.org/wiki/Software/fprint/libfprint/upekts/
> >
> > A sysfs trigger is enabled and the device starts scanning. As soon as an image
> > is available it is written in the character device /dev/iio:deviceX.
> >
> > Userspace applications will be able to calculate the expected image size using
> > the fingerprint attributes height, width and bit depth. Other attributes
> > introduced for the fingerprint channel in IIO represent information that aids in
> > the fingerprint image processing. Besides these, the proposed interface offers
> > userspace a way to read a feedback after a scan (like the swipe was too slow or
> > too fast) through a modified fingerprint_status channel.
> >
> > [0] http://www.spinics.net/lists/linux-iio/msg11463.html
> >
> > Teodora Baluta (3):
> > iio: core: add support for fingerprint devices
> > iio: core: change channel's storagebits/realbits to u32
> > iio: fingerprint: add fingerprint sensor via USB
> >
> > Documentation/ABI/testing/sysfs-bus-iio | 51 +++
> > drivers/iio/Kconfig | 1 +
> > drivers/iio/Makefile | 1 +
> > drivers/iio/fingerprint/Kconfig | 15 +
> > drivers/iio/fingerprint/Makefile | 5 +
> > drivers/iio/fingerprint/fp_tc.c | 162 +++++++++
> > drivers/iio/fingerprint/fp_tc.h | 22 ++
> > drivers/iio/fingerprint/fp_tc_usb.c | 618 ++++++++++++++++++++++++++++++++
> > drivers/iio/fingerprint/fp_tc_usb.h | 144 ++++++++
> > drivers/iio/industrialio-core.c | 9 +
> > include/linux/iio/iio.h | 11 +-
> > include/linux/iio/types.h | 10 +
> > 12 files changed, 1047 insertions(+), 2 deletions(-)
> > create mode 100644 drivers/iio/fingerprint/Kconfig
> > create mode 100644 drivers/iio/fingerprint/Makefile
> > create mode 100644 drivers/iio/fingerprint/fp_tc.c
> > create mode 100644 drivers/iio/fingerprint/fp_tc.h
> > create mode 100644 drivers/iio/fingerprint/fp_tc_usb.c
> > create mode 100644 drivers/iio/fingerprint/fp_tc_usb.h
> >
>
ÿôèº{.nÇ+·®+%Ëÿ±éݶ\x17¥wÿº{.nÇ+·¥{±þG«éÿ{ayº\x1dÊÚë,j\a¢f£¢·hïêÿêçz_è®\x03(éÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?¨èÚ&£ø§~á¶iOæ¬z·vØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?I¥
next prev parent reply other threads:[~2014-12-08 14:10 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-12-04 13:00 [RFC PATCH 0/3] Introduce IIO interface for fingerprint sensors Teodora Baluta
2014-12-04 13:00 ` [RFC PATCH 1/3] iio: core: add support for fingerprint devices Teodora Baluta
2014-12-04 13:00 ` [RFC PATCH 2/3] iio: core: change channel's storagebits/realbits to u32 Teodora Baluta
2014-12-04 13:00 ` [RFC PATCH 3/3] iio: fingerprint: add fingerprint sensor via USB Teodora Baluta
2014-12-05 2:15 ` [RFC PATCH 0/3] Introduce IIO interface for fingerprint sensors Jonathan Cameron
2014-12-08 14:10 ` Baluta, Teodora [this message]
2014-12-08 14:10 ` Baluta, Teodora
2014-12-18 16:51 ` Lars-Peter Clausen
2014-12-26 11:13 ` Jonathan Cameron
2015-01-14 17:14 ` Baluta, Teodora
2015-01-14 17:14 ` Baluta, Teodora
2015-01-14 17:14 ` Baluta, Teodora
2015-01-15 17:37 ` Sylwester Nawrocki
2015-01-23 13:05 ` Baluta, Teodora
2015-01-23 13:05 ` Baluta, Teodora
2015-01-23 13:05 ` Baluta, Teodora
2015-01-23 16:46 ` Florian Echtler
2015-01-26 10:24 ` Baluta, Teodora
2015-01-26 10:24 ` Baluta, Teodora
2015-01-26 10:24 ` Baluta, Teodora
2015-01-27 11:32 ` Sylwester Nawrocki
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1418047828.18463.10.camel@bebop \
--to=teodora.baluta@intel.com \
--cc=jic23@kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.