Home | History | Annotate | Download | only in i2c
History log of /src/sys/dev/i2c/si70xx.c
RevisionDateAuthorComments
 1.12  23-Jan-2025  brad The SI70XX temperature and humidity sensor has a set of commands that
can do the measurement by using I2C clock stretching. Add a sysctl to
allow the driver to use those commands. This is more efficient than
doing the usual polling method of getting the measurements back from
the chip, but only works if the I2C master supports clock stretching.

Also... change the use of the Read without Stop with a command and
zero length read to just a Write of the command in the non-clock
stretching case. I was confused by the datasheet when I write the
driver initially. This allows the driver to work with more I2C
masters.

Also... there were a couple of cases where more bytes were read on
the bus than would be sent by the chip. Fix those. The second part
of the serial number only has 6 bytes not 8, the firmware version has
1 byte not 8.
 1.11  30-Mar-2022  pgoyette branches: 1.11.10;
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.10  12-Nov-2021  brad Fix the serial number handling of the HTU21D chip and probably others.
Increase the number of read attempts as the HTU21D and probably others
do not respond as fast the actual SI70xx chip can.
 1.9  11-Nov-2021  brad Some HTU21D chips do not have a heater register and apparently no
heater element. Disable the heater features in the driver when that
condition is detected and let the attachment succeed. Also mention
that the SHT21 is another clone.
 1.8  21-Aug-2021  andvar fix some more typos in comments/log messages, improve wording as well.
 1.7  15-Jun-2021  mlelstv avoid double-free
 1.6  05-Dec-2020  jdc branches: 1.6.4;
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.5  03-Feb-2019  mrg branches: 1.5.12;
add missing break.

fairly sure this is correct, otherwise modelstr would be overwritten
with the next entry in this list..
 1.4  16-Jun-2018  thorpej branches: 1.4.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.
 1.3  30-Dec-2017  christos branches: 1.3.2;
fixes from Brad Spenser
 1.2  29-Dec-2017  christos Fix modules build.
 1.1  28-Dec-2017  christos PR/52848: Brad Spencer: Two environment sensor drivers: AM2315 and SI70xx
XXX: Please check that my refactoring did not break them!
 1.3.2.1  25-Jun-2018  pgoyette Sync with HEAD
 1.4.2.1  10-Jun-2019  christos Sync with HEAD
 1.5.12.1  14-Dec-2020  thorpej Sync w/ HEAD.
 1.6.4.1  17-Jun-2021  thorpej Sync w/ HEAD.
 1.11.10.1  02-Aug-2025  perseant Sync with HEAD

RSS XML Feed