# TMP007 infrared thermopile sensor configuration options

# Copyright (c) 2016 Intel Corporation
# SPDX-License-Identifier: Apache-2.0

menuconfig TMP007
	bool "TMP007 Infrared Thermopile Sensor"
	default y
	depends on DT_HAS_TI_TMP007_ENABLED
	select I2C
	help
	  Enable driver for TMP007 infrared thermopile sensors.

if TMP007

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

config TMP007_TRIGGER_NONE
	bool "No trigger"

config TMP007_TRIGGER_GLOBAL_THREAD
	bool "Use global thread"
	depends on GPIO
	select TMP007_TRIGGER

config TMP007_TRIGGER_OWN_THREAD
	bool "Use own thread"
	depends on GPIO
	select TMP007_TRIGGER

endchoice

config TMP007_TRIGGER
	bool

config TMP007_THREAD_PRIORITY
	int "Thread priority"
	depends on TMP007_TRIGGER_OWN_THREAD
	default 10
	help
	  Priority of thread used by the driver to handle interrupts.

config TMP007_THREAD_STACK_SIZE
	int "Thread stack size"
	depends on TMP007_TRIGGER_OWN_THREAD
	default 1024
	help
	  Stack size of thread used by the driver to handle interrupts.

endif # TMP007
