ISL(4)
π ISL(4) β like, the Intersil(TM) I2C ISL29018 sensor driver, bestie
okay so you're in section 4 of the Kernel Interfaces Manual and we're talking about isl, the Intersil(TM) I2C ISL29018 sensor driver. she's a little light-sniffing icon and I'm obsessed π¦
β¨ NAME β¨
isl β the Intersil(TM) I2C ISL29018 sensor driver. that's her. that's the whole name. periodt π
πΈ SYNOPSIS πΈ
so if you wanna compile this driver into the kernel (main character energy, no modules), you drop these lines into your kernel configuration file:
device isl
device ig4
device iicbus
or, if you'd rather load her as a module at boot time (lowkey easier ngl), you put these in loader.conf(5):
isl_load="YES"
ig4_load="YES"
and ok, on many Chromebook models this driver can be automatically configured with a little help from the chromebook_platform(4) driver β slay. alternatively, you can manually configure the isl driver in /boot/device.hints:
hint.isl.0.at="iicbus0"
hint.isl.0.addr="0x88"
hint.isl.1.at="iicbus1"
hint.isl.1.addr="0x88"
π DESCRIPTION π
so the isl driver gives you access to sensor data from the Intersil(TM) I2C ISL29018 Digital Ambient Light Sensor and Proximity Sensor with Interrupt Function (yes that's the full government name π). the functionality is basic and it's provided through the sysctl(8) interface.
on a system using device.hints(5), these values are configurable for isl:
π SYSCTL VARIABLES π
these sysctl(8) variables are available, and honestly? collecting them is my new hobby:
dev.isl.X.alsβ the current ALS (Ambient Light Sensor) readout.dev.isl.X.irβ the current IR (InfraRed) sensor readout.dev.isl.X.proxβ the current proximity sensor readout.dev.isl.X.resolutionβ the current sensor resolution.dev.isl.X.rangeβ the current sensor range.
π¦ EXAMPLES π¦
π Ambient light sensor read out
literally just:
$ sysctl dev.isl.0.als
dev.isl.0.als: 64
sixty-four. iconic. no notes. β¨
πΈ Automatically adjust brightness
ok so this one requires the port graphics/intel-backlight and only works with laptops using a supported Intel(R) GPU β important caveat bestie, don't come for me π
$ pkg install intel-backlight
$ sh /usr/local/share/examples/intel-backlight/isl_backlight.sh
π SEE ALSO π
chromebook_platform(4), ig4(4), iicbus(4) β go read them, iykyk π«Ά
π AUTHORS π
the isl driver was written by Michael Gmelin <freebsd@grem.de>.
this manual page was also written by Michael Gmelin <freebsd@grem.de>. double duty legend β
π BUGS π
ok so 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. like... ma'am. be careful out there. π«
and that's the whole page, bestie β Debian, December 18, 2018, ISL(4), mwah πβ¨
π¦ where this page comes from
- freebsd 14.5: base 14.5
- freebsd 15.1: base 15.1
- nixpkgs unstable: source
- Copyright (c) 2015 Michael Gmelin <freebsd@grem.de>
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms