1====================== 2Kernel driver isl29003 3====================== 4 5Supported chips: 6 7* Intersil ISL29003 8 9Prefix: 'isl29003' 10 11Addresses scanned: none 12 13Datasheet: 14http://www.intersil.com/data/fn/fn7464.pdf 15 16Author: Daniel Mack <daniel@caiaq.de> 17 18 19Description 20----------- 21The ISL29003 is an integrated light sensor with a 16-bit integrating type 22ADC, I2C user programmable lux range select for optimized counts/lux, and 23I2C multi-function control and monitoring capabilities. The internal ADC 24provides 16-bit resolution while rejecting 50Hz and 60Hz flicker caused by 25artificial light sources. 26 27The driver allows to set the lux range, the bit resolution, the operational 28mode (see below) and the power state of device and can read the current lux 29value, of course. 30 31 32Detection 33--------- 34 35The ISL29003 does not have an ID register which could be used to identify 36it, so the detection routine will just try to read from the configured I2C 37address and consider the device to be present as soon as it ACKs the 38transfer. 39 40 41Sysfs entries 42------------- 43 44range: 45 == =========================== 46 0: 0 lux to 1000 lux (default) 47 1: 0 lux to 4000 lux 48 2: 0 lux to 16,000 lux 49 3: 0 lux to 64,000 lux 50 == =========================== 51 52resolution: 53 == ===================== 54 0: 2^16 cycles (default) 55 1: 2^12 cycles 56 2: 2^8 cycles 57 3: 2^4 cycles 58 == ===================== 59 60mode: 61 == ================================================= 62 0: diode1's current (unsigned 16bit) (default) 63 1: diode1's current (unsigned 16bit) 64 2: difference between diodes (l1 - l2, signed 15bit) 65 == ================================================= 66 67power_state: 68 == ================================================= 69 0: device is disabled (default) 70 1: device is enabled 71 == ================================================= 72 73lux (read only): 74 returns the value from the last sensor reading 75 76