diff options
| author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 15:20:36 -0700 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 15:20:36 -0700 | 
| commit | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (patch) | |
| tree | 0bba044c4ce775e45a88a51686b5d9f90697ea9d /include/linux/i2c-algo-bit.h | |
Linux-2.6.12-rc2v2.6.12-rc2
Initial git repository build. I'm not bothering with the full history,
even though we have it. We can create a separate "historical" git
archive of that later if we want to, and in the meantime it's about
3.2GB when imported into git - space that would just make the early
git days unnecessarily complicated, when we don't have a lot of good
infrastructure for it.
Let it rip!
Diffstat (limited to 'include/linux/i2c-algo-bit.h')
| -rw-r--r-- | include/linux/i2c-algo-bit.h | 54 | 
1 files changed, 54 insertions, 0 deletions
| diff --git a/include/linux/i2c-algo-bit.h b/include/linux/i2c-algo-bit.h new file mode 100644 index 000000000000..110904481238 --- /dev/null +++ b/include/linux/i2c-algo-bit.h @@ -0,0 +1,54 @@ +/* ------------------------------------------------------------------------- */ +/* i2c-algo-bit.h i2c driver algorithms for bit-shift adapters               */ +/* ------------------------------------------------------------------------- */ +/*   Copyright (C) 1995-99 Simon G. Vogl + +    This program is free software; you can redistribute it and/or modify +    it under the terms of the GNU General Public License as published by +    the Free Software Foundation; either version 2 of the License, or +    (at your option) any later version. + +    This program is distributed in the hope that it will be useful, +    but WITHOUT ANY WARRANTY; without even the implied warranty of +    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +    GNU General Public License for more details. + +    You should have received a copy of the GNU General Public License +    along with this program; if not, write to the Free Software +    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.                */ +/* ------------------------------------------------------------------------- */ + +/* With some changes from Kyösti Mälkki <kmalkki@cc.hut.fi> and even +   Frodo Looijaard <frodol@dds.nl> */ + +/* $Id: i2c-algo-bit.h,v 1.10 2003/01/21 08:08:16 kmalkki Exp $ */ + +#ifndef _LINUX_I2C_ALGO_BIT_H +#define _LINUX_I2C_ALGO_BIT_H + +/* --- Defines for bit-adapters ---------------------------------------	*/ +/* + * This struct contains the hw-dependent functions of bit-style adapters to  + * manipulate the line states, and to init any hw-specific features. This is + * only used if you have more than one hw-type of adapter running.  + */ +struct i2c_algo_bit_data { +	void *data;		/* private data for lowlevel routines */ +	void (*setsda) (void *data, int state); +	void (*setscl) (void *data, int state); +	int  (*getsda) (void *data); +	int  (*getscl) (void *data); + +	/* local settings */ +	int udelay;		/* half-clock-cycle time in microsecs */ +				/* i.e. clock is (500 / udelay) KHz */ +	int mdelay;		/* in millisecs, unused */ +	int timeout;		/* in jiffies */ +}; + +#define I2C_BIT_ADAP_MAX	16 + +int i2c_bit_add_bus(struct i2c_adapter *); +int i2c_bit_del_bus(struct i2c_adapter *); + +#endif /* _LINUX_I2C_ALGO_BIT_H */ | 
