blob: 0d6a093c29a877e3ef4eebc0441d93b678c10fe4 [file] [log] [blame]
# Kconfig - ISL29035 light sensor configuration options
#
# Copyright (c) 2016 Intel Corporation
#
# SPDX-License-Identifier: Apache-2.0
#
menuconfig ISL29035
bool
prompt "ISL29035 light sensor"
default n
depends on I2C
help
Enable driver for the ISL29035 light sensor.
config ISL29035_NAME
string
prompt "Driver name"
default "ISL29035"
depends on ISL29035
help
Device name with which the ISL29035 sensor is identified.
config ISL29035_I2C_MASTER_DEV_NAME
string
prompt "I2C Master"
depends on ISL29035
default "I2C_0"
help
The device name of the I2C master device to which the ISL29035
chip is connected.
config ISL29035_THREAD_PRIORITY
int
prompt "Thread priority"
depends on ISL29035
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
depends on ISL29035
help
Maximum allowable lux value. Lower range values offer better
resolution.
config ISL29035_LUX_RANGE_1K
bool
prompt "1000"
config ISL29035_LUX_RANGE_4K
bool
prompt "4000"
config ISL29035_LUX_RANGE_16K
bool
prompt "16000"
config ISL29035_LUX_RANGE_64K
bool
prompt "64000"
endchoice
choice
prompt "Integration time"
default ISL29035_INTEGRATION_TIME_105K
depends on ISL29035
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
prompt "0.0256 ms"
config ISL29035_INTEGRATION_TIME_410
bool
prompt "0.41 ms"
config ISL29035_INTEGRATION_TIME_6500
bool
prompt "6.5 ms"
config ISL29035_INTEGRATION_TIME_105K
bool
prompt "105 ms"
endchoice
choice
prompt "Active sensing mode"
depends on ISL29035
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
prompt "ambient light"
help
Sensing mode for ambient light spectrum.
config ISL29035_MODE_IR
bool
prompt "infrared"
help
Sensing mode for infrared spectrum.
endchoice
choice
prompt "Trigger mode"
depends on ISL29035 && 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
prompt "No trigger"
config ISL29035_TRIGGER_GLOBAL_THREAD
bool
prompt "Use global thread"
depends on GPIO
select ISL29035_TRIGGER
config ISL29035_TRIGGER_OWN_THREAD
bool
prompt "Use own thread"
depends on GPIO
select ISL29035_TRIGGER
endchoice
config ISL29035_TRIGGER
bool
depends on ISL29035
config ISL29035_GPIO_DEV_NAME
string
prompt "GPIO device"
default "GPIO_0"
depends on ISL29035 && ISL29035_TRIGGER
help
The device name of the GPIO device to which the ISL29035 interrupt
pin is connected.
config ISL29035_GPIO_PIN_NUM
int
prompt "GPIO pin number"
default 0
depends on ISL29035 && ISL29035_TRIGGER
help
The number of the GPIO pin to which the ISL29035 interrupt pin is
connected.
config ISL29035_THREAD_PRIORITY
int
prompt "Thread priority"
depends on ISL29035 && ISL29035_TRIGGER_OWN_THREAD
default 10
help
Priority of thread used by the driver to handle interrupts.
config ISL29035_THREAD_STACK_SIZE
int
prompt "Thread stack size"
depends on ISL29035 && 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 && 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
prompt "1"
config ISL29035_INT_PERSIST_4
bool
prompt "4"
config ISL29035_INT_PERSIST_8
bool
prompt "8"
config ISL29035_INT_PERSIST_16
bool
prompt "16"
endchoice