# GROW_R502A hzgrow Fingerprint sensor Configuration options

# Copyright (c) 2021 Linumiz
# SPDX-License-Identifier: Apache-2.0

menuconfig GROW_R502A
	bool "GROW_R502A Fingerprint Sensor"
	default y
	depends on DT_HAS_HZGROW_R502A_ENABLED
	depends on UART_INTERRUPT_DRIVEN && SERIAL
	help
	  Enable driver for GROW_R502A Fingerprint Sensor.

if GROW_R502A

config R502A_DATA_PKT_SIZE
	int "Template data packet size"
	default 128
	help
	  Template data packet size for upload and download
	  to the sensor device.
	  valid values are:
	  32, 64, 128, 256.

choice
	prompt "Trigger mode"
	default GROW_R502A_TRIGGER_NONE
	help
	  Specify the type of triggering used by the driver.

config GROW_R502A_TRIGGER_NONE
	bool "No trigger"

config GROW_R502A_TRIGGER_GLOBAL_THREAD
	bool "Use global thread"
	depends on GPIO
	select GROW_R502A_TRIGGER

config GROW_R502A_TRIGGER_OWN_THREAD
	bool "Use own thread"
	depends on GPIO
	depends on $(dt_compat_any_has_prop,$(DT_COMPAT_HZGROW_R502A),int-gpios)
	select GROW_R502A_TRIGGER

endchoice


config GROW_R502A_TRIGGER
	bool

config GROW_R502A_THREAD_PRIORITY
	int "Thread priority"
	depends on GROW_R502A_TRIGGER_OWN_THREAD && GROW_R502A_TRIGGER
	default 10
	help
	  Priority of thread used by the driver to handle interrupts.

config GROW_R502A_THREAD_STACK_SIZE
	int "Thread stack size"
	depends on GROW_R502A_TRIGGER_OWN_THREAD && GROW_R502A_TRIGGER
	default 1024
	help
	  Stack size of thread used by the driver to handle interrupts.

config GROW_R502A_GPIO_POWER
	bool "GROW_R502A sensor VCC and VT GPIO"
	help
	  Enable control of vin-gpios and act-gpios.

endif # GROW_R502A
