isl(4)

isl4

Intersil(tm) i2c isl29018 sensor driver

Usage

To compile this driver into the kernel, place the following lines into the kernel configuration file:

device isl device ig4 device iicbus

Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5):

isl_load="YES"
ig4_load="YES"

On many Chromebook models this driver can be automatically configured with the help of the chromebook_platform(4) driver. Alternatively, the

isl driver can be manually configured in /boot/device.hints: hint.isl.0.at="iicbus0" hint.isl.0.addr="0x88" hint.isl.1.at="iicbus1" hint.isl.1.addr="0x88"

Overview

The isl driver provides access to sensor data provided by the Intersil(TM) I2C ISL29018 Digital Ambient Light Sensor and Proximity Sensor with Interrupt Function. Functionality is basic and provided through the sysctl(8) interface.

On a system using device.hints(5), these values are configurable for isl:

hint.isl.%d.at

target iicbus(4).

hint.isl.%d.addr

isl i2c address on the iicbus(4).

Sysctl variables

The following sysctl(8) variables are available:

dev.isl.X.als

Current ALS (Ambient Light Sensor) readout.

dev.isl.X.ir

Current IR (InfraRed) sensor readout.

dev.isl.X.prox

Current proximity sensor readout.

dev.isl.X.resolution

Current sensor resolution.

dev.isl.X.range

Current sensor range.

Examples

Ambient light sensor read out

$ sysctl dev.isl.0.als
dev.isl.0.als: 64

Automatically adjust brightness

This requires the port graphics/intel-backlight and only works with laptops using a supported Intel(R) GPU.

$ pkg install intel-backlight
$ sh /usr/local/share/examples/intel-backlight/isl_backlight.sh

Releases

25 releases since FreeBSD 11.0-RELEASE; the text changed 11 times.

  1. 11.0
  2. 11.1
  3. 11.2
  4. 11.3
  5. 11.4
  6. 12.0
  7. 12.1
  8. 12.2
  9. 12.3
  10. 12.4
  11. 13.0–13.2
  12. 13.3–16.0

Authors

The isl driver was written by Michael Gmelin ⟨[email protected]⟩.

This manual page was written by Michael Gmelin ⟨[email protected]⟩.

Bugs

The isl driver detects the device based from the I2C address. This might have unforeseen consequences if the initialization sequence is sent to an unknown device at that address.

From base 16.0-CURRENT-20261027-61c70dc16a79 in FreeBSD 16.0-CURRENT (2026-10-27). Parsed by carta from the page's mdoc source.