lib: Add VFS5011 driver
New driver for VFS5011 138a:0011 and 138a:0018 https://bugs.freedesktop.org/show_bug.cgi?id=61692 [vasilykh]: - use g_get_real_time() instead of non-portable time() - use g_free() instead of free() - comment out "RECV(VFS5011_IN_ENDPOINT_CTRL2, 8)"
This commit is contained in:
parent
061a457658
commit
dc537ef2c9
7 changed files with 7231 additions and 1 deletions
13
configure.ac
13
configure.ac
|
@ -23,7 +23,7 @@ AC_SUBST(lt_major)
|
||||||
AC_SUBST(lt_revision)
|
AC_SUBST(lt_revision)
|
||||||
AC_SUBST(lt_age)
|
AC_SUBST(lt_age)
|
||||||
|
|
||||||
all_drivers="upekts upektc upeksonly vcom5s uru4000 fdu2000 aes1610 aes1660 aes2501 aes2550 aes2660 aes3500 aes4000 vfs101 vfs301 upektc_img etes603"
|
all_drivers="upekts upektc upeksonly vcom5s uru4000 fdu2000 aes1610 aes1660 aes2501 aes2550 aes2660 aes3500 aes4000 vfs101 vfs301 vfs5011 upektc_img etes603"
|
||||||
|
|
||||||
require_imaging='no'
|
require_imaging='no'
|
||||||
require_aeslib='no'
|
require_aeslib='no'
|
||||||
|
@ -45,6 +45,7 @@ enable_aes3500='no'
|
||||||
enable_aes4000='no'
|
enable_aes4000='no'
|
||||||
enable_vfs101='no'
|
enable_vfs101='no'
|
||||||
enable_vfs301='no'
|
enable_vfs301='no'
|
||||||
|
enable_vfs5011='no'
|
||||||
enable_upektc_img='no'
|
enable_upektc_img='no'
|
||||||
enable_etes603='no'
|
enable_etes603='no'
|
||||||
|
|
||||||
|
@ -137,6 +138,10 @@ for driver in `echo ${drivers} | sed -e 's/,/ /g' -e 's/,$//g'`; do
|
||||||
AC_DEFINE([ENABLE_VFS301], [], [Build Validity VFS301/VFS300 driver])
|
AC_DEFINE([ENABLE_VFS301], [], [Build Validity VFS301/VFS300 driver])
|
||||||
enable_vfs301="yes"
|
enable_vfs301="yes"
|
||||||
;;
|
;;
|
||||||
|
vfs5011)
|
||||||
|
AC_DEFINE([ENABLE_VFS5011], [], [Build Validity VFS5011 driver])
|
||||||
|
enable_vfs5011="yes"
|
||||||
|
;;
|
||||||
upektc_img)
|
upektc_img)
|
||||||
AC_DEFINE([ENABLE_UPEKTC_IMG], [], [Build Upek TouchChip Fingerprint Coprocessor driver])
|
AC_DEFINE([ENABLE_UPEKTC_IMG], [], [Build Upek TouchChip Fingerprint Coprocessor driver])
|
||||||
enable_upektc_img="yes"
|
enable_upektc_img="yes"
|
||||||
|
@ -167,6 +172,7 @@ AM_CONDITIONAL([REQUIRE_AESX660], [test "$require_aesX660" = "yes"])
|
||||||
AM_CONDITIONAL([REQUIRE_AES3K], [test "$require_aes3k" = "yes"])
|
AM_CONDITIONAL([REQUIRE_AES3K], [test "$require_aes3k" = "yes"])
|
||||||
AM_CONDITIONAL([ENABLE_VFS101], [test "$enable_vfs101" = "yes"])
|
AM_CONDITIONAL([ENABLE_VFS101], [test "$enable_vfs101" = "yes"])
|
||||||
AM_CONDITIONAL([ENABLE_VFS301], [test "$enable_vfs301" = "yes"])
|
AM_CONDITIONAL([ENABLE_VFS301], [test "$enable_vfs301" = "yes"])
|
||||||
|
AM_CONDITIONAL([ENABLE_VFS5011], [test "$enable_vfs5011" = "yes"])
|
||||||
AM_CONDITIONAL([ENABLE_UPEKTC_IMG], [test "$enable_upektc_img" = "yes"])
|
AM_CONDITIONAL([ENABLE_UPEKTC_IMG], [test "$enable_upektc_img" = "yes"])
|
||||||
AM_CONDITIONAL([ENABLE_ETES603], [test "$enable_etes603" = "yes"])
|
AM_CONDITIONAL([ENABLE_ETES603], [test "$enable_etes603" = "yes"])
|
||||||
|
|
||||||
|
@ -375,6 +381,11 @@ if test x$enable_vfs301 != xno ; then
|
||||||
else
|
else
|
||||||
AC_MSG_NOTICE([ vfs301 driver disabled])
|
AC_MSG_NOTICE([ vfs301 driver disabled])
|
||||||
fi
|
fi
|
||||||
|
if test x$enable_vfs5011 != xno ; then
|
||||||
|
AC_MSG_NOTICE([** vfs5011 driver enabled])
|
||||||
|
else
|
||||||
|
AC_MSG_NOTICE([ vfs5011 driver disabled])
|
||||||
|
fi
|
||||||
if test x$enable_upektc_img != xno ; then
|
if test x$enable_upektc_img != xno ; then
|
||||||
AC_MSG_NOTICE([** upektc_img driver enabled])
|
AC_MSG_NOTICE([** upektc_img driver enabled])
|
||||||
else
|
else
|
||||||
|
|
|
@ -18,6 +18,7 @@ FDU2000_SRC = drivers/fdu2000.c
|
||||||
VCOM5S_SRC = drivers/vcom5s.c
|
VCOM5S_SRC = drivers/vcom5s.c
|
||||||
VFS101_SRC = drivers/vfs101.c
|
VFS101_SRC = drivers/vfs101.c
|
||||||
VFS301_SRC = drivers/vfs301.c drivers/vfs301_proto.c drivers/vfs301_proto.h drivers/vfs301_proto_fragments.h
|
VFS301_SRC = drivers/vfs301.c drivers/vfs301_proto.c drivers/vfs301_proto.h drivers/vfs301_proto_fragments.h
|
||||||
|
VFS5011_SRC = drivers/vfs5011.c drivers/vfs5011_proto.h
|
||||||
UPEKTC_IMG_SRC = drivers/upektc_img.c drivers/upektc_img.h
|
UPEKTC_IMG_SRC = drivers/upektc_img.c drivers/upektc_img.h
|
||||||
ETES603_SRC = drivers/etes603.c
|
ETES603_SRC = drivers/etes603.c
|
||||||
|
|
||||||
|
@ -38,6 +39,7 @@ EXTRA_DIST = \
|
||||||
$(VCOM5S_SRC) \
|
$(VCOM5S_SRC) \
|
||||||
$(VFS101_SRC) \
|
$(VFS101_SRC) \
|
||||||
$(VFS301_SRC) \
|
$(VFS301_SRC) \
|
||||||
|
$(VFS5011_SRC) \
|
||||||
$(UPEKTC_IMG_SRC) \
|
$(UPEKTC_IMG_SRC) \
|
||||||
$(ETES603_SRC) \
|
$(ETES603_SRC) \
|
||||||
drivers/aesx660.c \
|
drivers/aesx660.c \
|
||||||
|
@ -168,6 +170,10 @@ if ENABLE_VFS301
|
||||||
DRIVER_SRC += $(VFS301_SRC)
|
DRIVER_SRC += $(VFS301_SRC)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
if ENABLE_VFS5011
|
||||||
|
DRIVER_SRC += $(VFS5011_SRC)
|
||||||
|
endif
|
||||||
|
|
||||||
if ENABLE_UPEKTC_IMG
|
if ENABLE_UPEKTC_IMG
|
||||||
DRIVER_SRC += $(UPEKTC_IMG_SRC)
|
DRIVER_SRC += $(UPEKTC_IMG_SRC)
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -386,6 +386,9 @@ static struct fp_img_driver * const img_drivers[] = {
|
||||||
#ifdef ENABLE_VFS301
|
#ifdef ENABLE_VFS301
|
||||||
&vfs301_driver,
|
&vfs301_driver,
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef ENABLE_VFS5011
|
||||||
|
&vfs5011_driver,
|
||||||
|
#endif
|
||||||
#ifdef ENABLE_UPEKTC
|
#ifdef ENABLE_UPEKTC
|
||||||
&upektc_driver,
|
&upektc_driver,
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -39,6 +39,7 @@ enum {
|
||||||
AES3500_ID = 16,
|
AES3500_ID = 16,
|
||||||
UPEKTC_IMG_ID = 17,
|
UPEKTC_IMG_ID = 17,
|
||||||
ETES603_ID = 18,
|
ETES603_ID = 18,
|
||||||
|
VFS5011_ID = 19,
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
1020
libfprint/drivers/vfs5011.c
Normal file
1020
libfprint/drivers/vfs5011.c
Normal file
File diff suppressed because it is too large
Load diff
6186
libfprint/drivers/vfs5011_proto.h
Normal file
6186
libfprint/drivers/vfs5011_proto.h
Normal file
File diff suppressed because it is too large
Load diff
|
@ -296,6 +296,9 @@ extern struct fp_img_driver vfs101_driver;
|
||||||
#ifdef ENABLE_VFS301
|
#ifdef ENABLE_VFS301
|
||||||
extern struct fp_img_driver vfs301_driver;
|
extern struct fp_img_driver vfs301_driver;
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef ENABLE_VFS5011
|
||||||
|
extern struct fp_img_driver vfs5011_driver;
|
||||||
|
#endif
|
||||||
#ifdef ENABLE_UPEKTC_IMG
|
#ifdef ENABLE_UPEKTC_IMG
|
||||||
extern struct fp_img_driver upektc_img_driver;
|
extern struct fp_img_driver upektc_img_driver;
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue