Home | History | Annotate | Download | only in i2c
History log of /src/sys/dev/i2c/hytp14.c
RevisionDateAuthorComments
 1.15  30-Mar-2022  pgoyette These modules need to depend on iic, not just on i2cexec. (They will
still recursively get i2cexec since the iic depends on it.)

Partial fix for kern/56772
 1.14  15-Jun-2021  mlelstv avoid double-free
 1.13  27-Jan-2021  thorpej branches: 1.13.4;
Use DEVICE_COMPAT_EOL.
 1.12  25-Jan-2021  thorpej Since we're using designated initialisers for compat data, we should
use a completely empty initializer for the sentinel.
 1.11  17-Jan-2021  thorpej Use designated initializers and a consistent termination style in
compat_data[].
 1.10  05-Dec-2020  jdc Make sure that we set sc->sc_sme to NULL in failure cases in order to avoid
calling sysmon_envsys_unregister() with an invalid struct when we detach.
 1.9  08-Oct-2019  kardel branches: 1.9.8;
enable FDT direct configuration.
remove address test as the i2c address can be changed on this device.
 1.8  16-Jun-2018  thorpej branches: 1.8.2;
More cleanup to i2c autoconfiguration:

- Get all of the drivers onto the new match quality constants.
- Introduce a new helper function, iic_use_direct_match(), that has
all of the logic for direct-config matching. If it returns true,
the driver returns the match result (which may be 0). If it returns
false, the driver does indirect-config matching.
- iic_compat_match() now returns a weighted match quality; matches to
lower-indexed "compatible" device property are more-specific matches,
and return a better match quality accordingly.

XXX This driver is an odd-ball with respect to the hardware device.
See comments in the match routine. Unclear how best to handle it.
 1.7  03-Jul-2016  kardel branches: 1.7.16;
convert device polling from callout to kthread.
Solves:
- hung initialization on A20 (bananapi)
- allows iic_exec() implementations to use condvars
 1.6  18-Sep-2015  phx Declare sensor data invalid when reading the sensor failed (device is gone).
 1.5  09-Sep-2015  phx Tests showed that the sensor needs at least 30ms after a MR (measurement
request) to have valid data ready, so the driver didn't work very well.
Now the MR is sent in configurable intervals (hw.hythygtemp0.interval)
using callout(9), so that valid data is immediately available for
sysmon's sensor refresh. When the refresh comes too close after the last
MR, then the previous values are used.
 1.4  23-Apr-2015  pgoyette Update module dependencies for all the existing modules that depend on sysmon components.
 1.3  07-Mar-2015  jmcneill i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.
 1.2  29-Jun-2014  kardel branches: 1.2.2; 1.2.4; 1.2.6; 1.2.8;
allow i2c address 0x01-0x7F
ignore responses if the sensor is in command mode
 1.1  18-May-2014  kardel branches: 1.1.2;
add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)
 1.1.2.2  18-May-2014  rmind sync with head
 1.1.2.1  18-May-2014  rmind file hytp14.c was added on branch rmind-smpnet on 2014-05-18 17:45:37 +0000
 1.2.8.4  09-Jul-2016  skrll Sync with HEAD
 1.2.8.3  22-Sep-2015  skrll Sync with HEAD
 1.2.8.2  06-Jun-2015  skrll Sync with HEAD
 1.2.8.1  06-Apr-2015  skrll Sync with HEAD
 1.2.6.3  03-Dec-2017  jdolecek update from HEAD
 1.2.6.2  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.6.1  29-Jun-2014  tls file hytp14.c was added on branch tls-maxphys on 2014-08-20 00:03:37 +0000
 1.2.4.2  04-Nov-2015  riz Pull up following revision(s) (requested by phx in ticket #975):
sys/dev/i2c/hytp14.c: revision 1.5
share/man/man4/hythygtemp.4: revision 1.3
sys/dev/i2c/hytp14var.h: revision 1.3
Tests showed that the sensor needs at least 30ms after a MR (measurement
request) to have valid data ready, so the driver didn't work very well.
Now the MR is sent in configurable intervals (hw.hythygtemp0.interval)
using callout(9), so that valid data is immediately available for
sysmon's sensor refresh. When the refresh comes too close after the last
MR, then the previous values are used.
 1.2.4.1  21-Mar-2015  snj Pull up following revision(s) (requested by jmcneill in ticket #634):
distrib/sets/lists/modules/md.amd64: revision 1.51
distrib/sets/lists/modules/md.evbppc.powerpc: revision 1.5
distrib/sets/lists/modules/md.i386: revision 1.55
distrib/sets/lists/modules/mi: revision 1.71
sys/dev/i2c/au8522.c: revision 1.7
sys/dev/i2c/cx24227.c: revision 1.7
sys/dev/i2c/dbcool.c: revision 1.42
sys/dev/i2c/hytp14.c: revision 1.3
sys/dev/i2c/i2c_exec.c: revision 1.10
sys/dev/i2c/lg3303.c: revision 1.9
sys/dev/i2c/mt2131.c: revision 1.5
sys/dev/i2c/nxt2k.c: revision 1.4
sys/dev/i2c/sdtemp.c: revision 1.24
sys/dev/i2c/spdmem_i2c.c: revision 1.10
sys/dev/i2c/tvpll.c: revision 1.6
sys/dev/i2c/xc3028.c: revision 1.7
sys/dev/i2c/xc5k.c: revision 1.6
sys/dev/i2c/zl10353.c: revision 1.4
sys/modules/Makefile: revision 1.143
sys/modules/i2cexec/Makefile: revision 1.1
i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.
A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.
 1.2.2.2  10-Aug-2014  tls Rebase.
 1.2.2.1  29-Jun-2014  tls file hytp14.c was added on branch tls-earlyentropy on 2014-08-10 06:54:51 +0000
 1.7.16.1  25-Jun-2018  pgoyette Sync with HEAD
 1.8.2.1  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.9.8.2  03-Apr-2021  thorpej Sync with HEAD.
 1.9.8.1  14-Dec-2020  thorpej Sync w/ HEAD.
 1.13.4.1  17-Jun-2021  thorpej Sync w/ HEAD.

RSS XML Feed