1# Copyright (c) 2017 Intel Corporation
2# Copyright (c) 2018 Phytec Messtechnik GmbH
3# SPDX-License-Identifier: Apache-2.0
4
5menuconfig APDS9960
6	bool "APDS9960 Sensor"
7	default y
8	depends on DT_HAS_AVAGO_APDS9960_ENABLED
9	select I2C
10	help
11	  Enable driver for APDS9960 sensors.
12
13if APDS9960
14
15choice
16	prompt "Trigger mode"
17	default APDS9960_TRIGGER_NONE
18	help
19	  Specify the type of triggering used by the driver.
20
21config APDS9960_TRIGGER_NONE
22	bool "No trigger"
23
24config APDS9960_TRIGGER_GLOBAL_THREAD
25	bool "Use global thread"
26	depends on GPIO
27	depends on $(dt_compat_any_has_prop,$(DT_COMPAT_AVAGO_APDS9960),int-gpios)
28	select APDS9960_TRIGGER
29
30endchoice
31
32config APDS9960_TRIGGER
33	bool
34
35config APDS9960_ENABLE_ALS
36	bool "Ambient Light Sense"
37	default y
38	help
39	  Enable Ambient Light Sense (ALS).
40
41choice
42	prompt "Proximity Gain"
43	default APDS9960_PGAIN_4X
44
45config APDS9960_PGAIN_1X
46	bool "1x"
47
48config APDS9960_PGAIN_2X
49	bool "2x"
50
51config APDS9960_PGAIN_4X
52	bool "4x"
53
54config APDS9960_PGAIN_8X
55	bool "8x"
56
57endchoice
58
59choice
60	prompt "ALS and Color Gain"
61	default APDS9960_AGAIN_4X
62
63config APDS9960_AGAIN_1X
64	bool "1x"
65
66config APDS9960_AGAIN_4X
67	bool "4x"
68
69config APDS9960_AGAIN_16X
70	bool "16x"
71
72config APDS9960_AGAIN_64X
73	bool "64x"
74
75endchoice
76
77choice
78	prompt "Proximity Pulse Length"
79	default APDS9960_PPULSE_LENGTH_8US
80
81config APDS9960_PPULSE_LENGTH_4US
82	bool "4us"
83
84config APDS9960_PPULSE_LENGTH_8US
85	bool "8us"
86
87config APDS9960_PPULSE_LENGTH_16US
88	bool "16us"
89
90config APDS9960_PPULSE_LENGTH_32US
91	bool "32us"
92
93endchoice
94
95choice
96	prompt "Proximity LED boost current"
97	default APDS9960_PLED_BOOST_100PCT
98
99config APDS9960_PLED_BOOST_300PCT
100	bool "300%"
101
102config APDS9960_PLED_BOOST_200PCT
103	bool "200%"
104
105config APDS9960_PLED_BOOST_150PCT
106	bool "150%"
107
108config APDS9960_PLED_BOOST_100PCT
109	bool "100%"
110
111endchoice
112
113config APDS9960_PPULSE_COUNT
114	int "Proximity Pulse Count"
115	range 1 64
116	default 8
117
118endif # APDS9960
119