1# SPDX-License-Identifier: GPL-2.0-only 2 3# 4# Light sensors 5# 6# When adding new entries keep the list in alphabetical order 7 8menu "Light sensors" 9 10config ACPI_ALS 11 tristate "ACPI Ambient Light Sensor" 12 depends on ACPI 13 select IIO_BUFFER 14 select IIO_TRIGGERED_BUFFER 15 select IIO_KFIFO_BUF 16 help 17 Say Y here if you want to build a driver for the ACPI0008 18 Ambient Light Sensor. 19 20 To compile this driver as a module, choose M here: the module will 21 be called acpi-als. 22 23config ADJD_S311 24 tristate "ADJD-S311-CR999 digital color sensor" 25 select IIO_BUFFER 26 select IIO_TRIGGERED_BUFFER 27 depends on I2C 28 help 29 If you say yes here you get support for the Avago ADJD-S311-CR999 30 digital color light sensor. 31 32 This driver can also be built as a module. If so, the module 33 will be called adjd_s311. 34 35config ADUX1020 36 tristate "ADUX1020 photometric sensor" 37 select REGMAP_I2C 38 depends on I2C 39 help 40 Say Y here if you want to build a driver for the Analog Devices 41 ADUX1020 photometric sensor. 42 43 To compile this driver as a module, choose M here: the 44 module will be called adux1020. 45 46config AL3010 47 tristate "AL3010 ambient light sensor" 48 depends on I2C 49 help 50 Say Y here if you want to build a driver for the Dyna Image AL3010 51 ambient light sensor. 52 53 To compile this driver as a module, choose M here: the 54 module will be called al3010. 55 56config AL3320A 57 tristate "AL3320A ambient light sensor" 58 depends on I2C 59 help 60 Say Y here if you want to build a driver for the Dyna Image AL3320A 61 ambient light sensor. 62 63 To compile this driver as a module, choose M here: the 64 module will be called al3320a. 65 66config APDS9300 67 tristate "APDS9300 ambient light sensor" 68 depends on I2C 69 help 70 Say Y here if you want to build a driver for the Avago APDS9300 71 ambient light sensor. 72 73 To compile this driver as a module, choose M here: the 74 module will be called apds9300. 75 76config APDS9960 77 tristate "Avago APDS9960 gesture/RGB/ALS/proximity sensor" 78 select REGMAP_I2C 79 select IIO_BUFFER 80 select IIO_KFIFO_BUF 81 depends on I2C 82 help 83 Say Y here to build I2C interface support for the Avago 84 APDS9960 gesture/RGB/ALS/proximity sensor. 85 86 To compile this driver as a module, choose M here: the 87 module will be called apds9960 88 89config AS73211 90 tristate "AMS AS73211 XYZ color sensor" 91 depends on I2C 92 select IIO_BUFFER 93 select IIO_TRIGGERED_BUFFER 94 help 95 If you say yes here you get support for the AMS AS73211 96 JENCOLOR(R) Digital XYZ Sensor. 97 98 For triggered measurements, you will need an additional trigger driver 99 like IIO_HRTIMER_TRIGGER or IIO_SYSFS_TRIGGER. 100 101 This driver can also be built as a module. If so, the module 102 will be called as73211. 103 104config BH1750 105 tristate "ROHM BH1750 ambient light sensor" 106 depends on I2C 107 help 108 Say Y here to build support for the ROHM BH1710, BH1715, BH1721, 109 BH1750, BH1751 ambient light sensors. 110 111 To compile this driver as a module, choose M here: the module will 112 be called bh1750. 113 114config BH1780 115 tristate "ROHM BH1780 ambient light sensor" 116 depends on I2C 117 help 118 Say Y here to build support for the ROHM BH1780GLI ambient 119 light sensor. 120 121 To compile this driver as a module, choose M here: the module will 122 be called bh1780. 123 124config CM32181 125 depends on I2C 126 tristate "CM32181 driver" 127 help 128 Say Y here if you use cm32181. 129 This option enables ambient light sensor using 130 Capella cm32181 device driver. 131 132 To compile this driver as a module, choose M here: 133 the module will be called cm32181. 134 135config CM3232 136 depends on I2C 137 tristate "CM3232 ambient light sensor" 138 help 139 Say Y here if you use cm3232. 140 This option enables ambient light sensor using 141 Capella Microsystems cm3232 device driver. 142 143 To compile this driver as a module, choose M here: 144 the module will be called cm3232. 145 146config CM3323 147 depends on I2C 148 tristate "Capella CM3323 color light sensor" 149 help 150 Say Y here if you want to build a driver for Capella CM3323 151 color sensor. 152 153 To compile this driver as a module, choose M here: the module will 154 be called cm3323. 155 156config CM3605 157 tristate "Capella CM3605 ambient light and proximity sensor" 158 help 159 Say Y here if you want to build a driver for Capella CM3605 160 ambient light and short range proximity sensor. 161 162 To compile this driver as a module, choose M here: the module will 163 be called cm3605. 164 165config CM36651 166 depends on I2C 167 tristate "CM36651 driver" 168 help 169 Say Y here if you use cm36651. 170 This option enables proximity & RGB sensor using 171 Capella cm36651 device driver. 172 173 To compile this driver as a module, choose M here: 174 the module will be called cm36651. 175 176config IIO_CROS_EC_LIGHT_PROX 177 tristate "ChromeOS EC Light and Proximity Sensors" 178 depends on IIO_CROS_EC_SENSORS_CORE 179 help 180 Say Y here if you use the light and proximity sensors 181 presented by the ChromeOS EC Sensor hub. 182 183 To compile this driver as a module, choose M here: 184 the module will be called cros_ec_light_prox. 185 186config GP2AP002 187 tristate "Sharp GP2AP002 Proximity/ALS sensor" 188 depends on I2C 189 select REGMAP 190 help 191 Say Y here if you have a Sharp GP2AP002 proximity/ALS combo-chip 192 hooked to an I2C bus. 193 194 To compile this driver as a module, choose M here: the 195 module will be called gp2ap002. 196 197config GP2AP020A00F 198 tristate "Sharp GP2AP020A00F Proximity/ALS sensor" 199 depends on I2C 200 select REGMAP_I2C 201 select IIO_BUFFER 202 select IIO_TRIGGERED_BUFFER 203 select IRQ_WORK 204 help 205 Say Y here if you have a Sharp GP2AP020A00F proximity/ALS combo-chip 206 hooked to an I2C bus. 207 208 To compile this driver as a module, choose M here: the 209 module will be called gp2ap020a00f. 210 211config IQS621_ALS 212 tristate "Azoteq IQS621/622 ambient light sensors" 213 depends on MFD_IQS62X || COMPILE_TEST 214 help 215 Say Y here if you want to build support for the Azoteq IQS621 216 and IQS622 ambient light sensors. 217 218 To compile this driver as a module, choose M here: the module 219 will be called iqs621-als. 220 221config SENSORS_ISL29018 222 tristate "Intersil 29018 light and proximity sensor" 223 depends on I2C 224 select REGMAP_I2C 225 default n 226 help 227 If you say yes here you get support for ambient light sensing and 228 proximity infrared sensing from Intersil ISL29018. 229 This driver will provide the measurements of ambient light intensity 230 in lux, proximity infrared sensing and normal infrared sensing. 231 Data from sensor is accessible via sysfs. 232 233config SENSORS_ISL29028 234 tristate "Intersil ISL29028 Concurrent Light and Proximity Sensor" 235 depends on I2C 236 select REGMAP_I2C 237 help 238 Provides driver for the Intersil's ISL29028 device. 239 This driver supports the sysfs interface to get the ALS, IR intensity, 240 Proximity value via iio. The ISL29028 provides the concurrent sensing 241 of ambient light and proximity. 242 243config ISL29125 244 tristate "Intersil ISL29125 digital color light sensor" 245 depends on I2C 246 select IIO_BUFFER 247 select IIO_TRIGGERED_BUFFER 248 help 249 Say Y here if you want to build a driver for the Intersil ISL29125 250 RGB light sensor for I2C. 251 252 To compile this driver as a module, choose M here: the module will be 253 called isl29125. 254 255config HID_SENSOR_ALS 256 depends on HID_SENSOR_HUB 257 select IIO_BUFFER 258 select HID_SENSOR_IIO_COMMON 259 select HID_SENSOR_IIO_TRIGGER 260 tristate "HID ALS" 261 help 262 Say yes here to build support for the HID SENSOR 263 Ambient light sensor. 264 265 To compile this driver as a module, choose M here: the 266 module will be called hid-sensor-als. 267 268config HID_SENSOR_PROX 269 depends on HID_SENSOR_HUB 270 select IIO_BUFFER 271 select HID_SENSOR_IIO_COMMON 272 select HID_SENSOR_IIO_TRIGGER 273 tristate "HID PROX" 274 help 275 Say yes here to build support for the HID SENSOR 276 Proximity sensor. 277 278 To compile this driver as a module, choose M here: the 279 module will be called hid-sensor-prox. 280 281config JSA1212 282 tristate "JSA1212 ALS and proximity sensor driver" 283 depends on I2C 284 select REGMAP_I2C 285 help 286 Say Y here if you want to build a IIO driver for JSA1212 287 proximity & ALS sensor device. 288 289 To compile this driver as a module, choose M here: 290 the module will be called jsa1212. 291 292config ROHM_BU27008 293 tristate "ROHM BU27008 color (RGB+C/IR) sensor" 294 depends on I2C 295 select REGMAP_I2C 296 select IIO_GTS_HELPER 297 help 298 Enable support for the ROHM BU27008 color sensor. 299 The ROHM BU27008 is a sensor with 5 photodiodes (red, green, 300 blue, clear and IR) with four configurable channels. Red and 301 green being always available and two out of the rest three 302 (blue, clear, IR) can be selected to be simultaneously measured. 303 Typical application is adjusting LCD backlight of TVs, 304 mobile phones and tablet PCs. 305 306config ROHM_BU27034 307 tristate "ROHM BU27034 ambient light sensor" 308 depends on I2C 309 select REGMAP_I2C 310 select IIO_GTS_HELPER 311 select IIO_BUFFER 312 select IIO_KFIFO_BUF 313 help 314 Enable support for the ROHM BU27034 ambient light sensor. ROHM BU27034 315 is an ambient light sesnor with 3 channels and 3 photo diodes capable 316 of detecting a very wide range of illuminance. 317 Typical application is adjusting LCD and backlight power of TVs and 318 mobile phones. 319 320config RPR0521 321 tristate "ROHM RPR0521 ALS and proximity sensor driver" 322 depends on I2C 323 select REGMAP_I2C 324 select IIO_BUFFER 325 select IIO_TRIGGERED_BUFFER 326 help 327 Say Y here if you want to build support for ROHM's RPR0521 328 ambient light and proximity sensor device. 329 330 To compile this driver as a module, choose M here: 331 the module will be called rpr0521. 332 333config SENSORS_LM3533 334 tristate "LM3533 ambient light sensor" 335 depends on MFD_LM3533 336 help 337 If you say yes here you get support for the ambient light sensor 338 interface on National Semiconductor / TI LM3533 Lighting Power 339 chips. 340 341 The sensor interface can be used to control the LEDs and backlights 342 of the chip through defining five light zones and three sets of 343 corresponding output-current values. 344 345 The driver provides raw and mean adc readings along with the current 346 light zone through sysfs. A threshold event can be generated on zone 347 changes. The ALS-control output values can be set per zone for the 348 three current output channels. 349 350config LTR501 351 tristate "LTR-501ALS-01 light sensor" 352 depends on I2C 353 select REGMAP_I2C 354 select IIO_BUFFER 355 select IIO_TRIGGERED_BUFFER 356 help 357 If you say yes here you get support for the Lite-On LTR-501ALS-01 358 ambient light and proximity sensor. This driver also supports LTR-559 359 ALS/PS or LTR-301 ALS sensors. 360 361 This driver can also be built as a module. If so, the module 362 will be called ltr501. 363 364config LTRF216A 365 tristate "Liteon LTRF216A Light Sensor" 366 depends on I2C 367 select REGMAP_I2C 368 help 369 If you say Y or M here, you get support for Liteon LTRF216A 370 Ambient Light Sensor. 371 372 If built as a dynamically linked module, it will be called 373 ltrf216a. 374 375config LV0104CS 376 tristate "LV0104CS Ambient Light Sensor" 377 depends on I2C 378 help 379 Say Y here if you want to build support for the On Semiconductor 380 LV0104CS ambient light sensor. 381 382 To compile this driver as a module, choose M here: 383 the module will be called lv0104cs. 384 385config MAX44000 386 tristate "MAX44000 Ambient and Infrared Proximity Sensor" 387 depends on I2C 388 select REGMAP_I2C 389 select IIO_BUFFER 390 select IIO_TRIGGERED_BUFFER 391 help 392 Say Y here if you want to build support for Maxim Integrated's 393 MAX44000 ambient and infrared proximity sensor device. 394 395 To compile this driver as a module, choose M here: 396 the module will be called max44000. 397 398config MAX44009 399 tristate "MAX44009 Ambient Light Sensor" 400 depends on I2C 401 select REGMAP_I2C 402 help 403 Say Y here if you want to build support for Maxim Integrated's 404 MAX44009 ambient light sensor device. 405 406 To compile this driver as a module, choose M here: 407 the module will be called max44009. 408 409config NOA1305 410 tristate "ON Semiconductor NOA1305 ambient light sensor" 411 depends on I2C 412 select REGMAP_I2C 413 help 414 Say Y here if you want to build support for the ON Semiconductor 415 NOA1305 ambient light sensor. 416 417 To compile this driver as a module, choose M here: 418 The module will be called noa1305. 419 420config OPT3001 421 tristate "Texas Instruments OPT3001 Light Sensor" 422 depends on I2C 423 help 424 If you say Y or M here, you get support for Texas Instruments 425 OPT3001 Ambient Light Sensor. 426 427 If built as a dynamically linked module, it will be called 428 opt3001. 429 430config OPT4001 431 tristate "Texas Instruments OPT4001 Light Sensor" 432 depends on I2C 433 select REGMAP_I2C 434 help 435 If you say Y or M here, you get support for Texas Instruments 436 OPT4001 Ambient Light Sensor. 437 438 If built as a dynamically linked module, it will be called 439 opt4001. 440 441config PA12203001 442 tristate "TXC PA12203001 light and proximity sensor" 443 depends on I2C 444 select REGMAP_I2C 445 help 446 If you say yes here you get support for the TXC PA12203001 447 ambient light and proximity sensor. 448 449 This driver can also be built as a module. If so, the module 450 will be called pa12203001. 451 452config SI1133 453 tristate "SI1133 UV Index Sensor and Ambient Light Sensor" 454 depends on I2C 455 select REGMAP_I2C 456 help 457 Say Y here if you want to build a driver for the Silicon Labs SI1133 458 UV Index Sensor and Ambient Light Sensor chip. 459 460 To compile this driver as a module, choose M here: the module will be 461 called si1133. 462 463config SI1145 464 tristate "SI1132 and SI1141/2/3/5/6/7 combined ALS, UV index and proximity sensor" 465 depends on I2C 466 select IIO_BUFFER 467 select IIO_TRIGGERED_BUFFER 468 help 469 Say Y here if you want to build a driver for the Silicon Labs SI1132 or 470 SI1141/2/3/5/6/7 combined ambient light, UV index and proximity sensor 471 chips. 472 473 To compile this driver as a module, choose M here: the module will be 474 called si1145. 475 476config STK3310 477 tristate "STK3310 ALS and proximity sensor" 478 depends on I2C 479 select REGMAP_I2C 480 help 481 Say yes here to get support for the Sensortek STK3310 ambient light 482 and proximity sensor. The STK3311 model is also supported by this 483 driver. 484 485 Choosing M will build the driver as a module. If so, the module 486 will be called stk3310. 487 488config ST_UVIS25 489 tristate "STMicroelectronics UVIS25 sensor driver" 490 depends on (I2C || SPI) 491 select IIO_BUFFER 492 select IIO_TRIGGERED_BUFFER 493 select ST_UVIS25_I2C if (I2C) 494 select ST_UVIS25_SPI if (SPI_MASTER) 495 help 496 Say yes here to build support for STMicroelectronics UVIS25 497 uv sensor 498 499 To compile this driver as a module, choose M here: the module 500 will be called st_uvis25. 501 502config ST_UVIS25_I2C 503 tristate 504 depends on ST_UVIS25 505 select REGMAP_I2C 506 507config ST_UVIS25_SPI 508 tristate 509 depends on ST_UVIS25 510 select REGMAP_SPI 511 512config TCS3414 513 tristate "TAOS TCS3414 digital color sensor" 514 depends on I2C 515 select IIO_BUFFER 516 select IIO_TRIGGERED_BUFFER 517 help 518 If you say yes here you get support for the TAOS TCS3414 519 family of digital color sensors. 520 521 This driver can also be built as a module. If so, the module 522 will be called tcs3414. 523 524config TCS3472 525 tristate "TAOS TCS3472 color light-to-digital converter" 526 depends on I2C 527 select IIO_BUFFER 528 select IIO_TRIGGERED_BUFFER 529 help 530 If you say yes here you get support for the TAOS TCS3472 531 family of color light-to-digital converters with IR filter. 532 533 This driver can also be built as a module. If so, the module 534 will be called tcs3472. 535 536config SENSORS_TSL2563 537 tristate "TAOS TSL2560, TSL2561, TSL2562 and TSL2563 ambient light sensors" 538 depends on I2C 539 help 540 If you say yes here you get support for the Taos TSL2560, 541 TSL2561, TSL2562 and TSL2563 ambient light sensors. 542 543 This driver can also be built as a module. If so, the module 544 will be called tsl2563. 545 546config TSL2583 547 tristate "TAOS TSL2580, TSL2581 and TSL2583 light-to-digital converters" 548 depends on I2C 549 help 550 Provides support for the TAOS tsl2580, tsl2581 and tsl2583 devices. 551 Access ALS data via iio, sysfs. 552 553config TSL2591 554 tristate "TAOS TSL2591 ambient light sensor" 555 depends on I2C 556 help 557 Select Y here for support of the AMS/TAOS TSL2591 ambient light sensor, 558 featuring channels for combined visible + IR intensity and lux illuminance. 559 Access data via iio and sysfs. Supports iio_events. 560 561 To compile this driver as a module, select M: the 562 module will be called tsl2591. 563 564config TSL2772 565 tristate "TAOS TSL/TMD2x71 and TSL/TMD2x72 Family of light and proximity sensors" 566 depends on I2C 567 help 568 Support for: tsl2571, tsl2671, tmd2671, tsl2771, tmd2771, tsl2572, tsl2672, 569 tmd2672, tsl2772, tmd2772 devices. 570 Provides iio_events and direct access via sysfs. 571 572config TSL4531 573 tristate "TAOS TSL4531 ambient light sensors" 574 depends on I2C 575 help 576 Say Y here if you want to build a driver for the TAOS TSL4531 family 577 of ambient light sensors with direct lux output. 578 579 To compile this driver as a module, choose M here: the 580 module will be called tsl4531. 581 582config US5182D 583 tristate "UPISEMI light and proximity sensor" 584 depends on I2C 585 help 586 If you say yes here you get support for the UPISEMI US5182D 587 ambient light and proximity sensor. 588 589 This driver can also be built as a module. If so, the module 590 will be called us5182d. 591 592config VCNL4000 593 tristate "VCNL4000/4010/4020/4200 combined ALS and proximity sensor" 594 select IIO_BUFFER 595 select IIO_TRIGGERED_BUFFER 596 depends on I2C 597 help 598 Say Y here if you want to build a driver for the Vishay VCNL4000, 599 VCNL4010, VCNL4020, VCNL4200 combined ambient light and proximity 600 sensor. 601 602 To compile this driver as a module, choose M here: the 603 module will be called vcnl4000. 604 605config VCNL4035 606 tristate "VCNL4035 combined ALS and proximity sensor" 607 select IIO_BUFFER 608 select IIO_TRIGGERED_BUFFER 609 select REGMAP_I2C 610 depends on I2C 611 help 612 Say Y here if you want to build a driver for the Vishay VCNL4035, 613 combined ambient light (ALS) and proximity sensor. Currently only ALS 614 function is available. 615 616 To compile this driver as a module, choose M here: the 617 module will be called vcnl4035. 618 619config VEML6030 620 tristate "VEML6030 ambient light sensor" 621 select REGMAP_I2C 622 depends on I2C 623 help 624 Say Y here if you want to build a driver for the Vishay VEML6030 625 ambient light sensor (ALS). 626 627 To compile this driver as a module, choose M here: the 628 module will be called veml6030. 629 630config VEML6070 631 tristate "VEML6070 UV A light sensor" 632 depends on I2C 633 help 634 Say Y here if you want to build a driver for the Vishay VEML6070 UV A 635 light sensor. 636 637 To compile this driver as a module, choose M here: the 638 module will be called veml6070. 639 640config VL6180 641 tristate "VL6180 ALS, range and proximity sensor" 642 depends on I2C 643 help 644 Say Y here if you want to build a driver for the STMicroelectronics 645 VL6180 combined ambient light, range and proximity sensor. 646 647 To compile this driver as a module, choose M here: the 648 module will be called vl6180. 649 650config ZOPT2201 651 tristate "ZOPT2201 ALS and UV B sensor" 652 depends on I2C 653 help 654 Say Y here if you want to build a driver for the IDT 655 ZOPT2201 ambient light and UV B sensor. 656 657 To compile this driver as a module, choose M here: the 658 module will be called zopt2201. 659 660endmenu 661