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 ISL76682 256 tristate "Intersil ISL76682 Light Sensor" 257 depends on I2C 258 select REGMAP_I2C 259 help 260 Say Y here if you want to build a driver for the Intersil ISL76682 261 Ambient Light Sensor and IR Intensity sensor. This driver provides 262 the readouts via standard IIO sysfs and device interface. Both ALS 263 illuminance and IR illuminance are provided raw with separate scale 264 setting which can be configured via sysfs, the default scale is 1000 265 lux, other options are 4000/16000/64000 lux. 266 267 To compile this driver as a module, choose M here: the module will be 268 called isl76682. 269 270config HID_SENSOR_ALS 271 depends on HID_SENSOR_HUB 272 select IIO_BUFFER 273 select HID_SENSOR_IIO_COMMON 274 select HID_SENSOR_IIO_TRIGGER 275 tristate "HID ALS" 276 help 277 Say yes here to build support for the HID SENSOR 278 Ambient light sensor. 279 280 To compile this driver as a module, choose M here: the 281 module will be called hid-sensor-als. 282 283config HID_SENSOR_PROX 284 depends on HID_SENSOR_HUB 285 select IIO_BUFFER 286 select HID_SENSOR_IIO_COMMON 287 select HID_SENSOR_IIO_TRIGGER 288 tristate "HID PROX" 289 help 290 Say yes here to build support for the HID SENSOR 291 Proximity sensor. 292 293 To compile this driver as a module, choose M here: the 294 module will be called hid-sensor-prox. 295 296config JSA1212 297 tristate "JSA1212 ALS and proximity sensor driver" 298 depends on I2C 299 select REGMAP_I2C 300 help 301 Say Y here if you want to build a IIO driver for JSA1212 302 proximity & ALS sensor device. 303 304 To compile this driver as a module, choose M here: 305 the module will be called jsa1212. 306 307config ROHM_BU27008 308 tristate "ROHM BU27008 color (RGB+C/IR) sensor" 309 depends on I2C 310 select REGMAP_I2C 311 select IIO_GTS_HELPER 312 help 313 Enable support for the ROHM BU27008 color sensor. 314 The ROHM BU27008 is a sensor with 5 photodiodes (red, green, 315 blue, clear and IR) with four configurable channels. Red and 316 green being always available and two out of the rest three 317 (blue, clear, IR) can be selected to be simultaneously measured. 318 Typical application is adjusting LCD backlight of TVs, 319 mobile phones and tablet PCs. 320 321config ROHM_BU27034 322 tristate "ROHM BU27034 ambient light sensor" 323 depends on I2C 324 select REGMAP_I2C 325 select IIO_GTS_HELPER 326 select IIO_BUFFER 327 select IIO_KFIFO_BUF 328 help 329 Enable support for the ROHM BU27034 ambient light sensor. ROHM BU27034 330 is an ambient light sesnor with 3 channels and 3 photo diodes capable 331 of detecting a very wide range of illuminance. 332 Typical application is adjusting LCD and backlight power of TVs and 333 mobile phones. 334 335config RPR0521 336 tristate "ROHM RPR0521 ALS and proximity sensor driver" 337 depends on I2C 338 select REGMAP_I2C 339 select IIO_BUFFER 340 select IIO_TRIGGERED_BUFFER 341 help 342 Say Y here if you want to build support for ROHM's RPR0521 343 ambient light and proximity sensor device. 344 345 To compile this driver as a module, choose M here: 346 the module will be called rpr0521. 347 348config SENSORS_LM3533 349 tristate "LM3533 ambient light sensor" 350 depends on MFD_LM3533 351 help 352 If you say yes here you get support for the ambient light sensor 353 interface on National Semiconductor / TI LM3533 Lighting Power 354 chips. 355 356 The sensor interface can be used to control the LEDs and backlights 357 of the chip through defining five light zones and three sets of 358 corresponding output-current values. 359 360 The driver provides raw and mean adc readings along with the current 361 light zone through sysfs. A threshold event can be generated on zone 362 changes. The ALS-control output values can be set per zone for the 363 three current output channels. 364 365config LTR390 366 tristate "LTR-390UV-01 ambient light and UV sensor" 367 depends on I2C 368 select REGMAP_I2C 369 help 370 If you say yes here you get support for the Lite-On LTR-390UV-01 371 ambient light and UV sensor. 372 373 This driver can also be built as a module. If so, the module 374 will be called ltr390. 375 376config LTR501 377 tristate "LTR-501ALS-01 light sensor" 378 depends on I2C 379 select REGMAP_I2C 380 select IIO_BUFFER 381 select IIO_TRIGGERED_BUFFER 382 help 383 If you say yes here you get support for the Lite-On LTR-501ALS-01 384 ambient light and proximity sensor. This driver also supports LTR-559 385 ALS/PS or LTR-301 ALS sensors. 386 387 This driver can also be built as a module. If so, the module 388 will be called ltr501. 389 390config LTRF216A 391 tristate "Liteon LTRF216A Light Sensor" 392 depends on I2C 393 select REGMAP_I2C 394 help 395 If you say Y or M here, you get support for Liteon LTRF216A 396 Ambient Light Sensor. 397 398 If built as a dynamically linked module, it will be called 399 ltrf216a. 400 401config LV0104CS 402 tristate "LV0104CS Ambient Light Sensor" 403 depends on I2C 404 help 405 Say Y here if you want to build support for the On Semiconductor 406 LV0104CS ambient light sensor. 407 408 To compile this driver as a module, choose M here: 409 the module will be called lv0104cs. 410 411config MAX44000 412 tristate "MAX44000 Ambient and Infrared Proximity Sensor" 413 depends on I2C 414 select REGMAP_I2C 415 select IIO_BUFFER 416 select IIO_TRIGGERED_BUFFER 417 help 418 Say Y here if you want to build support for Maxim Integrated's 419 MAX44000 ambient and infrared proximity sensor device. 420 421 To compile this driver as a module, choose M here: 422 the module will be called max44000. 423 424config MAX44009 425 tristate "MAX44009 Ambient Light Sensor" 426 depends on I2C 427 select REGMAP_I2C 428 help 429 Say Y here if you want to build support for Maxim Integrated's 430 MAX44009 ambient light sensor device. 431 432 To compile this driver as a module, choose M here: 433 the module will be called max44009. 434 435config NOA1305 436 tristate "ON Semiconductor NOA1305 ambient light sensor" 437 depends on I2C 438 select REGMAP_I2C 439 help 440 Say Y here if you want to build support for the ON Semiconductor 441 NOA1305 ambient light sensor. 442 443 To compile this driver as a module, choose M here: 444 The module will be called noa1305. 445 446config OPT3001 447 tristate "Texas Instruments OPT3001 Light Sensor" 448 depends on I2C 449 help 450 If you say Y or M here, you get support for Texas Instruments 451 OPT3001 Ambient Light Sensor. 452 453 If built as a dynamically linked module, it will be called 454 opt3001. 455 456config OPT4001 457 tristate "Texas Instruments OPT4001 Light Sensor" 458 depends on I2C 459 select REGMAP_I2C 460 help 461 If you say Y or M here, you get support for Texas Instruments 462 OPT4001 Ambient Light Sensor. 463 464 If built as a dynamically linked module, it will be called 465 opt4001. 466 467config PA12203001 468 tristate "TXC PA12203001 light and proximity sensor" 469 depends on I2C 470 select REGMAP_I2C 471 help 472 If you say yes here you get support for the TXC PA12203001 473 ambient light and proximity sensor. 474 475 This driver can also be built as a module. If so, the module 476 will be called pa12203001. 477 478config SI1133 479 tristate "SI1133 UV Index Sensor and Ambient Light Sensor" 480 depends on I2C 481 select REGMAP_I2C 482 help 483 Say Y here if you want to build a driver for the Silicon Labs SI1133 484 UV Index Sensor and Ambient Light Sensor chip. 485 486 To compile this driver as a module, choose M here: the module will be 487 called si1133. 488 489config SI1145 490 tristate "SI1132 and SI1141/2/3/5/6/7 combined ALS, UV index and proximity sensor" 491 depends on I2C 492 select IIO_BUFFER 493 select IIO_TRIGGERED_BUFFER 494 help 495 Say Y here if you want to build a driver for the Silicon Labs SI1132 or 496 SI1141/2/3/5/6/7 combined ambient light, UV index and proximity sensor 497 chips. 498 499 To compile this driver as a module, choose M here: the module will be 500 called si1145. 501 502config STK3310 503 tristate "STK3310 ALS and proximity sensor" 504 depends on I2C 505 select REGMAP_I2C 506 help 507 Say yes here to get support for the Sensortek STK3310 ambient light 508 and proximity sensor. The STK3311 model is also supported by this 509 driver. 510 511 Choosing M will build the driver as a module. If so, the module 512 will be called stk3310. 513 514config ST_UVIS25 515 tristate "STMicroelectronics UVIS25 sensor driver" 516 depends on (I2C || SPI) 517 select IIO_BUFFER 518 select IIO_TRIGGERED_BUFFER 519 select ST_UVIS25_I2C if (I2C) 520 select ST_UVIS25_SPI if (SPI_MASTER) 521 help 522 Say yes here to build support for STMicroelectronics UVIS25 523 uv sensor 524 525 To compile this driver as a module, choose M here: the module 526 will be called st_uvis25. 527 528config ST_UVIS25_I2C 529 tristate 530 depends on ST_UVIS25 531 select REGMAP_I2C 532 533config ST_UVIS25_SPI 534 tristate 535 depends on ST_UVIS25 536 select REGMAP_SPI 537 538config TCS3414 539 tristate "TAOS TCS3414 digital color sensor" 540 depends on I2C 541 select IIO_BUFFER 542 select IIO_TRIGGERED_BUFFER 543 help 544 If you say yes here you get support for the TAOS TCS3414 545 family of digital color sensors. 546 547 This driver can also be built as a module. If so, the module 548 will be called tcs3414. 549 550config TCS3472 551 tristate "TAOS TCS3472 color light-to-digital converter" 552 depends on I2C 553 select IIO_BUFFER 554 select IIO_TRIGGERED_BUFFER 555 help 556 If you say yes here you get support for the TAOS TCS3472 557 family of color light-to-digital converters with IR filter. 558 559 This driver can also be built as a module. If so, the module 560 will be called tcs3472. 561 562config SENSORS_TSL2563 563 tristate "TAOS TSL2560, TSL2561, TSL2562 and TSL2563 ambient light sensors" 564 depends on I2C 565 help 566 If you say yes here you get support for the Taos TSL2560, 567 TSL2561, TSL2562 and TSL2563 ambient light sensors. 568 569 This driver can also be built as a module. If so, the module 570 will be called tsl2563. 571 572config TSL2583 573 tristate "TAOS TSL2580, TSL2581 and TSL2583 light-to-digital converters" 574 depends on I2C 575 help 576 Provides support for the TAOS tsl2580, tsl2581 and tsl2583 devices. 577 Access ALS data via iio, sysfs. 578 579config TSL2591 580 tristate "TAOS TSL2591 ambient light sensor" 581 depends on I2C 582 help 583 Select Y here for support of the AMS/TAOS TSL2591 ambient light sensor, 584 featuring channels for combined visible + IR intensity and lux illuminance. 585 Access data via iio and sysfs. Supports iio_events. 586 587 To compile this driver as a module, select M: the 588 module will be called tsl2591. 589 590config TSL2772 591 tristate "TAOS TSL/TMD2x71 and TSL/TMD2x72 Family of light and proximity sensors" 592 depends on I2C 593 help 594 Support for: tsl2571, tsl2671, tmd2671, tsl2771, tmd2771, tsl2572, tsl2672, 595 tmd2672, tsl2772, tmd2772 devices. 596 Provides iio_events and direct access via sysfs. 597 598config TSL4531 599 tristate "TAOS TSL4531 ambient light sensors" 600 depends on I2C 601 help 602 Say Y here if you want to build a driver for the TAOS TSL4531 family 603 of ambient light sensors with direct lux output. 604 605 To compile this driver as a module, choose M here: the 606 module will be called tsl4531. 607 608config US5182D 609 tristate "UPISEMI light and proximity sensor" 610 depends on I2C 611 help 612 If you say yes here you get support for the UPISEMI US5182D 613 ambient light and proximity sensor. 614 615 This driver can also be built as a module. If so, the module 616 will be called us5182d. 617 618config VCNL4000 619 tristate "VCNL4000/4010/4020/4200 combined ALS and proximity sensor" 620 select IIO_BUFFER 621 select IIO_TRIGGERED_BUFFER 622 depends on I2C 623 help 624 Say Y here if you want to build a driver for the Vishay VCNL4000, 625 VCNL4010, VCNL4020, VCNL4200 combined ambient light and proximity 626 sensor. 627 628 To compile this driver as a module, choose M here: the 629 module will be called vcnl4000. 630 631config VCNL4035 632 tristate "VCNL4035 combined ALS and proximity sensor" 633 select IIO_BUFFER 634 select IIO_TRIGGERED_BUFFER 635 select REGMAP_I2C 636 depends on I2C 637 help 638 Say Y here if you want to build a driver for the Vishay VCNL4035, 639 combined ambient light (ALS) and proximity sensor. Currently only ALS 640 function is available. 641 642 To compile this driver as a module, choose M here: the 643 module will be called vcnl4035. 644 645config VEML6030 646 tristate "VEML6030 ambient light sensor" 647 select REGMAP_I2C 648 depends on I2C 649 help 650 Say Y here if you want to build a driver for the Vishay VEML6030 651 ambient light sensor (ALS). 652 653 To compile this driver as a module, choose M here: the 654 module will be called veml6030. 655 656config VEML6070 657 tristate "VEML6070 UV A light sensor" 658 depends on I2C 659 help 660 Say Y here if you want to build a driver for the Vishay VEML6070 UV A 661 light sensor. 662 663 To compile this driver as a module, choose M here: the 664 module will be called veml6070. 665 666config VEML6075 667 tristate "VEML6075 UVA and UVB light sensor" 668 select REGMAP_I2C 669 depends on I2C 670 help 671 Say Y here if you want to build a driver for the Vishay VEML6075 UVA 672 and UVB light sensor. 673 674 To compile this driver as a module, choose M here: the 675 module will be called veml6075. 676 677config VL6180 678 tristate "VL6180 ALS, range and proximity sensor" 679 depends on I2C 680 help 681 Say Y here if you want to build a driver for the STMicroelectronics 682 VL6180 combined ambient light, range and proximity sensor. 683 684 To compile this driver as a module, choose M here: the 685 module will be called vl6180. 686 687config ZOPT2201 688 tristate "ZOPT2201 ALS and UV B sensor" 689 depends on I2C 690 help 691 Say Y here if you want to build a driver for the IDT 692 ZOPT2201 ambient light and UV B sensor. 693 694 To compile this driver as a module, choose M here: the 695 module will be called zopt2201. 696 697endmenu 698