| # ISL29035 light sensor configuration options |
| |
| # Copyright (c) 2016 Intel Corporation |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| menuconfig ISL29035 |
| bool "ISL29035 light sensor" |
| default y |
| depends on DT_HAS_ISIL_ISL29035_ENABLED |
| select I2C |
| help |
| Enable driver for the ISL29035 light sensor. |
| |
| if ISL29035 |
| |
| config ISL29035_THREAD_PRIORITY |
| int "Thread priority" |
| default 10 |
| help |
| Priority of thread used to handle the timer and threshold triggers. |
| |
| choice |
| prompt "Full scale lux range" |
| default ISL29035_LUX_RANGE_1K |
| help |
| Maximum allowable lux value. Lower range values offer better |
| resolution. |
| |
| config ISL29035_LUX_RANGE_1K |
| bool "1000" |
| |
| config ISL29035_LUX_RANGE_4K |
| bool "4000" |
| |
| config ISL29035_LUX_RANGE_16K |
| bool "16000" |
| |
| config ISL29035_LUX_RANGE_64K |
| bool "64000" |
| |
| endchoice |
| |
| choice |
| prompt "Integration time" |
| default ISL29035_INTEGRATION_TIME_105K |
| help |
| The sampling period of the internal ADC of the light sensor. |
| Lower integration time values mean lower ADC resolution. |
| |
| config ISL29035_INTEGRATION_TIME_26 |
| bool "0.0256 ms" |
| |
| config ISL29035_INTEGRATION_TIME_410 |
| bool "0.41 ms" |
| |
| config ISL29035_INTEGRATION_TIME_6500 |
| bool "6.5 ms" |
| |
| config ISL29035_INTEGRATION_TIME_105K |
| bool "105 ms" |
| |
| endchoice |
| |
| choice |
| prompt "Active sensing mode" |
| default ISL29035_MODE_ALS |
| help |
| Sensing mode in which the ISL29035 will function. The chip can be |
| configured either for either ambient light or infrared sensing. |
| |
| config ISL29035_MODE_ALS |
| bool "ambient light" |
| help |
| Sensing mode for ambient light spectrum. |
| |
| config ISL29035_MODE_IR |
| bool "infrared" |
| help |
| Sensing mode for infrared spectrum. |
| |
| endchoice |
| |
| choice |
| prompt "Trigger mode" |
| depends on ISL29035_MODE_ALS && GPIO |
| default ISL29035_TRIGGER_NONE |
| help |
| Specify the type of triggering to be used by the driver. |
| Only available for ambient light sensing mode. |
| |
| config ISL29035_TRIGGER_NONE |
| bool "No trigger" |
| |
| config ISL29035_TRIGGER_GLOBAL_THREAD |
| bool "Use global thread" |
| depends on GPIO |
| depends on $(dt_compat_any_has_prop,$(DT_COMPAT_ISIL_ISL29035),int-gpios) |
| select ISL29035_TRIGGER |
| |
| config ISL29035_TRIGGER_OWN_THREAD |
| bool "Use own thread" |
| depends on GPIO |
| depends on $(dt_compat_any_has_prop,$(DT_COMPAT_ISIL_ISL29035),int-gpios) |
| select ISL29035_TRIGGER |
| |
| endchoice |
| |
| config ISL29035_TRIGGER |
| bool |
| |
| config ISL29035_THREAD_PRIORITY |
| int "Thread priority" |
| depends on ISL29035_TRIGGER_OWN_THREAD |
| default 10 |
| help |
| Priority of thread used by the driver to handle interrupts. |
| |
| config ISL29035_THREAD_STACK_SIZE |
| int "Thread stack size" |
| depends on ISL29035_TRIGGER_OWN_THREAD |
| default 1024 |
| help |
| Stack size of thread used by the driver to handle interrupts. |
| |
| choice |
| prompt "Interrupt persist cycles" |
| depends on ISL29035_TRIGGER |
| default ISL29035_INT_PERSIST_1 |
| help |
| Number of consecutive integration cycles for which the data samples |
| need to remain outside the threshold window in order for the interrupt |
| to be triggered. |
| |
| config ISL29035_INT_PERSIST_1 |
| bool "1" |
| |
| config ISL29035_INT_PERSIST_4 |
| bool "4" |
| |
| config ISL29035_INT_PERSIST_8 |
| bool "8" |
| |
| config ISL29035_INT_PERSIST_16 |
| bool "16" |
| |
| endchoice |
| |
| endif # ISL29035 |