xref: /freebsd/share/man/man4/isl.4 (revision fa9896e082a1046ff4fbc75fcba4d18d1f2efc19)
1ca2e4ecdSMichael Gmelin.\" Copyright (c) 2015 Michael Gmelin <freebsd@grem.de>
2ca2e4ecdSMichael Gmelin.\" All rights reserved.
3ca2e4ecdSMichael Gmelin.\"
4ca2e4ecdSMichael Gmelin.\" Redistribution and use in source and binary forms, with or without
5ca2e4ecdSMichael Gmelin.\" modification, are permitted provided that the following conditions
6ca2e4ecdSMichael Gmelin.\" are met:
7ca2e4ecdSMichael Gmelin.\" 1. Redistributions of source code must retain the above copyright
8ca2e4ecdSMichael Gmelin.\"    notice, this list of conditions and the following disclaimer.
9ca2e4ecdSMichael Gmelin.\" 2. Redistributions in binary form must reproduce the above copyright
10ca2e4ecdSMichael Gmelin.\"    notice, this list of conditions and the following disclaimer in the
11ca2e4ecdSMichael Gmelin.\"    documentation and/or other materials provided with the distribution.
12ca2e4ecdSMichael Gmelin.\"
13ca2e4ecdSMichael Gmelin.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14ca2e4ecdSMichael Gmelin.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15ca2e4ecdSMichael Gmelin.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16ca2e4ecdSMichael Gmelin.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17ca2e4ecdSMichael Gmelin.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18ca2e4ecdSMichael Gmelin.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19ca2e4ecdSMichael Gmelin.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20ca2e4ecdSMichael Gmelin.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21ca2e4ecdSMichael Gmelin.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22ca2e4ecdSMichael Gmelin.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23ca2e4ecdSMichael Gmelin.\" SUCH DAMAGE.
24ca2e4ecdSMichael Gmelin.\"
25*d4ee9420SAndriy Gapon.Dd December 18, 2018
26ca2e4ecdSMichael Gmelin.Dt ISL 4
27ca2e4ecdSMichael Gmelin.Os
28ca2e4ecdSMichael Gmelin.Sh NAME
29ca2e4ecdSMichael Gmelin.Nm isl
30ca2e4ecdSMichael Gmelin.Nd Intersil(TM) I2C ISL29018 sensor driver
31ca2e4ecdSMichael Gmelin.Sh SYNOPSIS
32ca2e4ecdSMichael GmelinTo compile this driver into the kernel, place the following lines into
33ca2e4ecdSMichael Gmelinthe kernel configuration file:
34ca2e4ecdSMichael Gmelin.Bd -ragged -offset indent
35ca2e4ecdSMichael Gmelin.Cd "device isl"
36ca2e4ecdSMichael Gmelin.Cd "device ig4"
37448897d3SAndriy Gapon.Cd "device iicbus"
38ca2e4ecdSMichael Gmelin.Ed
39ca2e4ecdSMichael Gmelin.Pp
40ca2e4ecdSMichael GmelinAlternatively, to load the driver as a module at boot time, place the following line in
41ca2e4ecdSMichael Gmelin.Xr loader.conf 5 :
42ca2e4ecdSMichael Gmelin.Bd -literal -offset indent
43ca2e4ecdSMichael Gmelinisl_load="YES"
44ca2e4ecdSMichael Gmelinig4_load="YES"
45ca2e4ecdSMichael Gmelin.Ed
46448897d3SAndriy Gapon.Pp
47*d4ee9420SAndriy GaponOn many Chromebook models this driver can be automatically configured with the
48*d4ee9420SAndriy Gaponhelp of the
49*d4ee9420SAndriy Gapon.Xr chromebook_platform 4
50*d4ee9420SAndriy Gapondriver.
51*d4ee9420SAndriy GaponAlternatively, the
52*d4ee9420SAndriy Gapon.Nm
53*d4ee9420SAndriy Gapondriver can be manually configured in
54448897d3SAndriy Gapon.Pa /boot/device.hints :
55448897d3SAndriy Gapon.Cd hint.isl.0.at="iicbus0"
56448897d3SAndriy Gapon.Cd hint.isl.0.addr="0x88"
57448897d3SAndriy Gapon.Cd hint.isl.1.at="iicbus1"
58448897d3SAndriy Gapon.Cd hint.isl.1.addr="0x88"
59ca2e4ecdSMichael Gmelin.Sh DESCRIPTION
60ca2e4ecdSMichael GmelinThe
61ca2e4ecdSMichael Gmelin.Nm
62ca2e4ecdSMichael Gmelindriver provides access to sensor data provided by the Intersil(TM) I2C
63ca2e4ecdSMichael GmelinISL29018 Digital Ambient Light Sensor and Proximity Sensor with Interrupt
64ca2e4ecdSMichael GmelinFunction.
65ca2e4ecdSMichael GmelinFunctionality is basic and provided through the
66ca2e4ecdSMichael Gmelin.Xr sysctl 8
67ca2e4ecdSMichael Gmelininterface.
68448897d3SAndriy Gapon.Pp
69448897d3SAndriy GaponOn a system using
70448897d3SAndriy Gapon.Xr device.hints 5 ,
71448897d3SAndriy Gaponthese values are configurable for
72448897d3SAndriy Gapon.Nm :
73448897d3SAndriy Gapon.Bl -tag -width "hint.isl.%d.addr"
74448897d3SAndriy Gapon.It Va hint.isl.%d.at
75448897d3SAndriy Gapontarget
76448897d3SAndriy Gapon.Xr iicbus 4 .
77448897d3SAndriy Gapon.It Va hint.isl.%d.addr
78448897d3SAndriy Gapon.Nm
79448897d3SAndriy Gaponi2c address on the
80448897d3SAndriy Gapon.Xr iicbus 4 .
81448897d3SAndriy Gapon.El
82ca2e4ecdSMichael Gmelin.Sh SYSCTL VARIABLES
83ca2e4ecdSMichael GmelinThe following
84ca2e4ecdSMichael Gmelin.Xr sysctl 8
85ca2e4ecdSMichael Gmelinvariables are available:
86ca2e4ecdSMichael Gmelin.Bl -tag -width "dev.isl.X.resolution"
87ca2e4ecdSMichael Gmelin.It Va dev.isl.X.als
88ca2e4ecdSMichael GmelinCurrent ALS (Ambient Light Sensor) readout.
89ca2e4ecdSMichael Gmelin.It Va dev.isl.X.ir
90ca2e4ecdSMichael GmelinCurrent IR (InfraRed) sensor readout.
91ca2e4ecdSMichael Gmelin.It Va dev.isl.X.prox
92ca2e4ecdSMichael GmelinCurrent proximity sensor readout.
93ca2e4ecdSMichael Gmelin.It Va dev.isl.X.resolution
94ca2e4ecdSMichael GmelinCurrent sensor resolution.
95ca2e4ecdSMichael Gmelin.It Va dev.isl.X.range
96ca2e4ecdSMichael GmelinCurrent sensor range.
97ca2e4ecdSMichael Gmelin.El
98ca2e4ecdSMichael Gmelin.Sh EXAMPLES
99ca2e4ecdSMichael Gmelin.Ss Ambient light sensor read out
100ca2e4ecdSMichael Gmelin.Bd -literal
101ca2e4ecdSMichael Gmelin$ sysctl dev.isl.0.als
102ca2e4ecdSMichael Gmelindev.isl.0.als: 64
103ca2e4ecdSMichael Gmelin.Ed
104ca2e4ecdSMichael Gmelin.Ss Automatically adjust brightness
105ca2e4ecdSMichael GmelinThis requires the port
106ca2e4ecdSMichael Gmelin.Pa graphics/intel-backlight
107ca2e4ecdSMichael Gmelinand only works with laptops using a supported Intel(R) GPU.
108ca2e4ecdSMichael Gmelin.Bd -literal
109ca2e4ecdSMichael Gmelin$ pkg install intel-backlight
110ca2e4ecdSMichael Gmelin$ sh /usr/local/share/examples/intel-backlight/isl_backlight.sh
111ca2e4ecdSMichael Gmelin.Ed
112ca2e4ecdSMichael Gmelin.Sh SEE ALSO
113*d4ee9420SAndriy Gapon.Xr chromebook_platform 4 ,
114ca2e4ecdSMichael Gmelin.Xr ig4 4 ,
115448897d3SAndriy Gapon.Xr iicbus 4
116ca2e4ecdSMichael Gmelin.Sh AUTHORS
117ca2e4ecdSMichael Gmelin.An -nosplit
118ca2e4ecdSMichael GmelinThe
119ca2e4ecdSMichael Gmelin.Nm
120ca2e4ecdSMichael Gmelindriver was written by
121ca2e4ecdSMichael Gmelin.An Michael Gmelin Aq Mt freebsd@grem.de .
122ca2e4ecdSMichael Gmelin.Pp
123ca2e4ecdSMichael GmelinThis manual page was written by
124ca2e4ecdSMichael Gmelin.An Michael Gmelin Aq Mt freebsd@grem.de .
125ca2e4ecdSMichael Gmelin.Sh BUGS
126ca2e4ecdSMichael GmelinThe
127ca2e4ecdSMichael Gmelin.Nm
128448897d3SAndriy Gapondriver detects the device based from the I2C address.
129ca2e4ecdSMichael GmelinThis might have unforeseen consequences if the initialization sequence
130ca2e4ecdSMichael Gmelinis sent to an unknown device at that address.
131