diff options
-rw-r--r-- | driver/fingerprint/fpc/bep/fpc_private.h | 37 | ||||
-rw-r--r-- | driver/fingerprint/fpc/libfp/fpc_private.h | 24 |
2 files changed, 61 insertions, 0 deletions
diff --git a/driver/fingerprint/fpc/bep/fpc_private.h b/driver/fingerprint/fpc/bep/fpc_private.h new file mode 100644 index 0000000000..5334779672 --- /dev/null +++ b/driver/fingerprint/fpc/bep/fpc_private.h @@ -0,0 +1,37 @@ +/* Copyright 2020 The Chromium OS Authors. All rights reserved. + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ + +/* Private sensor interface */ + +#ifndef __CROS_EC_FPC_PRIVATE_H +#define __CROS_EC_FPC_PRIVATE_H + +#include <stdint.h> + +typedef struct { + uint32_t num_defective_pixels; +} fp_sensor_info_t; + +/** + * fp_sensor_maintenance runs a test for defective pixels and should + * be triggered periodically by the client. Internally, a defective + * pixel list is maintained and the algorithm will compensate for + * any defect pixels when matching towards a template. + * + * The defective pixel update will abort and return an error if any of + * the finger detect zones are covered. A client can call + * fp_sensor_finger_status to determine the current status. + * + * @param[in] image_data pointer to FP_SENSOR_IMAGE_SIZE bytes of memory + * @param[out] fp_sensor_info Structure containing output data. + * + * @return + * - 0 on success + * - negative value on error + */ +int fp_sensor_maintenance(uint8_t *image_data, + fp_sensor_info_t *fp_sensor_info); + +#endif /* __CROS_EC_FPC_PRIVATE_H */ diff --git a/driver/fingerprint/fpc/libfp/fpc_private.h b/driver/fingerprint/fpc/libfp/fpc_private.h index 6ec09ee0ee..18feff3a49 100644 --- a/driver/fingerprint/fpc/libfp/fpc_private.h +++ b/driver/fingerprint/fpc/libfp/fpc_private.h @@ -101,4 +101,28 @@ int fp_sensor_open(void *ctx, uint32_t ctx_size); */ const char *fp_sensor_get_version(void); +typedef struct { + uint32_t num_defective_pixels; +} fp_sensor_info_t; + +/** + * fp_sensor_maintenance runs a test for defective pixels and should + * be triggered periodically by the client. Internally, a defective + * pixel list is maintained and the algorithm will compensate for + * any defect pixels when matching towards a template. + * + * The defective pixel update will abort and return an error if any of + * the finger detect zones are covered. A client can call + * fp_sensor_finger_status to determine the current status. + * + * @param[in] image_data pointer to FP_SENSOR_IMAGE_SIZE bytes of memory + * @param[out] fp_sensor_info Structure containing output data. + * + * @return + * - 0 on success + * - negative value on error + */ +int fp_sensor_maintenance(uint8_t *image_data, + fp_sensor_info_t *fp_sensor_info); + #endif /* __CROS_EC_FPC_PRIVATE_H */ |