Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 139189
b: refs/heads/master
c: 3cdbbee
h: refs/heads/master
i:
  139187: 916347e
v: v3
  • Loading branch information
Daniel Mack authored and Linus Torvalds committed Apr 1, 2009
1 parent 45bbd39 commit 9dda671
Show file tree
Hide file tree
Showing 5 changed files with 544 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 891f7d73ea30f925596b90bcf21020bfc5d90f3f
refs/heads/master: 3cdbbeebb77348176bd6a03fd86e11bc281c529e
62 changes: 62 additions & 0 deletions trunk/Documentation/misc-devices/isl29003
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
Kernel driver isl29003
=====================

Supported chips:
* Intersil ISL29003
Prefix: 'isl29003'
Addresses scanned: none
Datasheet:
http://www.intersil.com/data/fn/fn7464.pdf

Author: Daniel Mack <daniel@caiaq.de>


Description
-----------
The ISL29003 is an integrated light sensor with a 16-bit integrating type
ADC, I2C user programmable lux range select for optimized counts/lux, and
I2C multi-function control and monitoring capabilities. The internal ADC
provides 16-bit resolution while rejecting 50Hz and 60Hz flicker caused by
artificial light sources.

The driver allows to set the lux range, the bit resolution, the operational
mode (see below) and the power state of device and can read the current lux
value, of course.


Detection
---------

The ISL29003 does not have an ID register which could be used to identify
it, so the detection routine will just try to read from the configured I2C
addess and consider the device to be present as soon as it ACKs the
transfer.


Sysfs entries
-------------

range:
0: 0 lux to 1000 lux (default)
1: 0 lux to 4000 lux
2: 0 lux to 16,000 lux
3: 0 lux to 64,000 lux

resolution:
0: 2^16 cycles (default)
1: 2^12 cycles
2: 2^8 cycles
3: 2^4 cycles

mode:
0: diode1's current (unsigned 16bit) (default)
1: diode1's current (unsigned 16bit)
2: difference between diodes (l1 - l2, signed 15bit)

power_state:
0: device is disabled (default)
1: device is enabled

lux (read only):
returns the value from the last sensor reading

10 changes: 10 additions & 0 deletions trunk/drivers/misc/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -223,6 +223,16 @@ config DELL_LAPTOP
This driver adds support for rfkill and backlight control to Dell
laptops.

config ISL29003
tristate "Intersil ISL29003 ambient light sensor"
depends on I2C && SYSFS
help
If you say yes here you get support for the Intersil ISL29003
ambient light sensor.

This driver can also be built as a module. If so, the module
will be called isl29003.

source "drivers/misc/c2port/Kconfig"
source "drivers/misc/eeprom/Kconfig"

Expand Down
1 change: 1 addition & 0 deletions trunk/drivers/misc/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,6 @@ obj-$(CONFIG_KGDB_TESTS) += kgdbts.o
obj-$(CONFIG_SGI_XP) += sgi-xp/
obj-$(CONFIG_SGI_GRU) += sgi-gru/
obj-$(CONFIG_HP_ILO) += hpilo.o
obj-$(CONFIG_ISL29003) += isl29003.o
obj-$(CONFIG_C2PORT) += c2port/
obj-y += eeprom/
Loading

0 comments on commit 9dda671

Please sign in to comment.