Home | History | Annotate | Download | only in i2c
History log of /src/sys/dev/i2c/i2c_bitbang.c
RevisionDateAuthorComments
 1.14  07-Jun-2016  pgoyette Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.
 1.13  25-Apr-2010  tsutsui branches: 1.13.18; 1.13.36;
Fix typo in comments.
 1.12  12-Jul-2008  tsutsui branches: 1.12.14; 1.12.16;
Set SDA High (it means turning off open-collector driver
regardless of DIR() on the formal I2C hardware implementation)
during DIR() is set to INPUT. Some MD drivers might assume it.

tl(4) still works with this change.
 1.11  01-Jun-2008  tsutsui branches: 1.11.2; 1.11.4;
Reorganize I2C bitbang ops:
- don't set DIR(INPUT) in i2c_wait_for_scl() because it could cause
unexpected stop condition in SCL=H, SDL=L and DIR(OUTPUT) case,
and DIR() should be used only to switch SDA direction, not SCL
that is always output on the master device
(I'm not sure if reading SCL on the master is defined in the I2C spec)
- set SDA right after SCL H->L edge on Tx, fetch SDA at SCL L->H edge on Rx,
and make sure not to change SDA during SCL=H except start/stop conditions
so that we don't have to rely on data setup time which might be critical
- don't set DIR(OUTPUT) during SDA bit read in i2c_bitbang_read_byte()
- explicitly specify both SDA and SCL bits in SETBITS() for readability
- sprinkle comments

Fixes "tl0: error reading Ethernet address" problem on tl(4).
 1.10  31-May-2008  tsutsui - use 'us' for microsecond rather than 'uS'
- unwrap not so long lines
- some KNF
 1.9  11-Dec-2007  lukem branches: 1.9.8; 1.9.10; 1.9.12; 1.9.14;
use __KERNEL_RCSID()
 1.8  01-Dec-2007  kiyohara branches: 1.8.2; 1.8.4; 1.8.6;
Fix lost direction for the check on status, and read/writes.
 1.7  30-Apr-2007  macallan branches: 1.7.6; 1.7.8; 1.7.14;
add support for i2c waitstates so we can actually talk to slow slaves
Suggestions and review by simon
 1.6  16-Nov-2006  christos branches: 1.6.4; 1.6.8; 1.6.10;
__unused removal on arguments; approved by core.
 1.5  12-Oct-2006  christos - sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386
 1.4  14-Jul-2006  gdamore branches: 1.4.4; 1.4.6;
Add support for 10-bit addressing, per i2c specs. This has not been tested
with any actual 10-bit devices (as I don't have any), but it doesn't seem to
impact 7-bit addressing any. Approved by christos@, briggs@, and thorpej@.
 1.3  05-Mar-2006  christos branches: 1.3.8;
cleanup more SET/CLR/ISSET lossage
 1.2  11-Dec-2005  christos branches: 1.2.4; 1.2.6; 1.2.8;
merge ktrace-lwp.
 1.1  30-Sep-2003  thorpej branches: 1.1.4; 1.1.18;
New generic I2C framework. Supports bit-bang and "intelligent" I2C
interface controllers (of varying intelligence levels).

Contributed by Wasabi Systems, Inc. Primarily written by Steve Woodford,
with some modification by me.
 1.1.18.5  21-Jan-2008  yamt sync with head
 1.1.18.4  07-Dec-2007  yamt sync with head
 1.1.18.3  03-Sep-2007  yamt sync with head.
 1.1.18.2  30-Dec-2006  yamt sync with head.
 1.1.18.1  21-Jun-2006  yamt sync with head.
 1.1.4.4  21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.4.3  18-Sep-2004  skrll Sync with HEAD.
 1.1.4.2  03-Aug-2004  skrll Sync with HEAD
 1.1.4.1  30-Sep-2003  skrll file i2c_bitbang.c was added on branch ktrace-lwp on 2004-08-03 10:46:05 +0000
 1.2.8.2  11-Aug-2006  yamt sync with head
 1.2.8.1  13-Mar-2006  yamt sync with head.
 1.2.6.1  22-Apr-2006  simonb Sync with head.
 1.2.4.1  09-Sep-2006  rpaulo sync with head
 1.3.8.1  13-Jul-2006  gdamore Merge from HEAD.
 1.4.6.2  10-Dec-2006  yamt sync with head.
 1.4.6.1  22-Oct-2006  yamt sync with head
 1.4.4.1  18-Nov-2006  ad Sync with head.
 1.6.10.1  11-Jul-2007  mjf Sync with head.
 1.6.8.1  27-May-2007  ad Sync with head.
 1.6.4.1  07-May-2007  yamt sync with head.
 1.7.14.2  27-Dec-2007  mjf Sync with HEAD.
 1.7.14.1  08-Dec-2007  mjf Sync with HEAD.
 1.7.8.1  09-Jan-2008  matt sync with HEAD
 1.7.6.1  03-Dec-2007  joerg Sync with HEAD.
 1.8.6.1  13-Dec-2007  bouyer Sync with HEAD
 1.8.4.1  11-Dec-2007  yamt sync with head.
 1.8.2.1  26-Dec-2007  ad Sync with head.
 1.9.14.2  18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.9.14.1  23-Jun-2008  wrstuden Sync w/ -current. 34 merge conflicts to follow.
 1.9.12.2  11-Aug-2010  yamt sync with head.
 1.9.12.1  04-May-2009  yamt sync with head.
 1.9.10.1  04-Jun-2008  yamt sync with head
 1.9.8.2  28-Sep-2008  mjf Sync with HEAD.
 1.9.8.1  02-Jun-2008  mjf Sync with HEAD.
 1.11.4.1  19-Oct-2008  haad Sync with HEAD.
 1.11.2.1  18-Jul-2008  simonb Sync with head.
 1.12.16.1  30-May-2010  rmind sync with head
 1.12.14.1  30-Apr-2010  uebayasi Sync with HEAD.
 1.13.36.1  09-Jul-2016  skrll Sync with HEAD
 1.13.18.1  03-Dec-2017  jdolecek update from HEAD

RSS XML Feed