freebsd-dev/sys/dev/iicbus
Ian Lepore 8917c34a82 Follow changes in r328307 by using new IIC_RECURSIVE flag.
The driver now ensures only one thread at a time is running in the API
functions (clock_gettime() and clock_settime()) by specifically requesting
ownership of the i2c bus without using IIC_RECURSIVE, then it does all IO
using IIC_RECURSIVE so that each individual IO operation doesn't try to
re-acquire the bus.

The other IO done by the driver happens at attach or intr_config_hooks time,
when there can't be multiple threads running with the same device instance.
So, the IIC_RECURSIVE flag can be safely ORed into the wait flags for all IO
done by the driver, because it's all either done in a single-threaded
environment, or protected within a block bounded by explict
iicbus_acquire_bus() and iicbus_release_bus() calls.
2018-01-24 03:09:56 +00:00
..
twsi Change the remaining files using my personnal email address to my freebsd one 2017-12-25 22:09:25 +00:00
ad7417.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
ad7418.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
adm1030.c
adt746x.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
ds13rtc.c Switch to using the bcd_clocktime conversion functinos that validate the BCD 2018-01-23 21:18:15 +00:00
ds1307.c Switch to using the bcd_clocktime conversion functions that validate the BCD 2018-01-23 21:31:43 +00:00
ds1307reg.h DS1307: Add the mcp7941x enable bit 2017-11-08 01:28:20 +00:00
ds1631.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
ds1672.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
ds1775.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
ds3231.c Do not give up if writing to the chip's control and status registers fails 2017-12-10 18:55:42 +00:00
ds3231reg.h Bugfixes and enhancements... 2017-07-31 22:00:00 +00:00
icee.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
if_ic.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
iic_recover_bus.c Add iic_recover_bus(), a helper function that can be used by any i2c driver 2017-06-29 01:50:58 +00:00
iic_recover_bus.h Add iic_recover_bus(), a helper function that can be used by any i2c driver 2017-06-29 01:50:58 +00:00
iic.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
iic.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
iicbb_if.m Remove a couple of extra blank lines. 2016-05-22 04:09:05 +00:00
iicbb.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
iicbus_if.m Add a default implementation that returns ENODEV for start, repeat_start, 2017-09-11 23:47:49 +00:00
iicbus.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
iicbus.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
iicoc.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
iicoc.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
iiconf.c Fix a bug introduced with recursive bus ownership support in r321584. 2018-01-23 23:30:19 +00:00
iiconf.h Fix a bug introduced with recursive bus ownership support in r321584. 2018-01-23 23:30:19 +00:00
iicsmb.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
isl12xx.c Follow changes in r328307 by using new IIC_RECURSIVE flag. 2018-01-24 03:09:41 +00:00
lm75.c Fix the deciKelvin to Celsius conversion in kernel. 2016-05-22 13:58:32 +00:00
max6690.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
nxprtc.c Follow changes in r328307 by using new IIC_RECURSIVE flag. 2018-01-24 03:09:56 +00:00
ofw_iicbus.c Make ofw_iicbus attach to twsi I2C controllers. 2017-06-20 18:25:27 +00:00
rtc8583.c [i2c/clock] add support for EPSON RTC-8583 2017-10-31 12:15:00 +00:00
s35390a.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
sy8106a.c Add driver for Silergy Corp. SY8106A buck regulator. 2016-09-05 13:39:54 +00:00