From 85a0242c71e34bdc6daa0abc33f787dc0859dae2 Mon Sep 17 00:00:00 2001 From: claudio Date: Mon, 9 Feb 2009 21:38:27 +0000 Subject: Add i2c driver (to etrax) improved by Geert Vancompernolle git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14462 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../files/arch/cris/arch-v10/drivers/i2c_gvc.h | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 target/linux/etrax/files/arch/cris/arch-v10/drivers/i2c_gvc.h (limited to 'target/linux/etrax/files/arch/cris/arch-v10/drivers/i2c_gvc.h') diff --git a/target/linux/etrax/files/arch/cris/arch-v10/drivers/i2c_gvc.h b/target/linux/etrax/files/arch/cris/arch-v10/drivers/i2c_gvc.h new file mode 100644 index 000000000..970705898 --- /dev/null +++ b/target/linux/etrax/files/arch/cris/arch-v10/drivers/i2c_gvc.h @@ -0,0 +1,31 @@ +/* $Id: i2c.h,v 1.3 2004/05/28 09:26:59 starvik Exp $ */ +#ifndef _I2C_H +#define _I2C_H + +int i2c_init(void); + +/* High level I2C actions */ +int i2c_writereg(unsigned char theSlave, unsigned char theReg, unsigned char theValue); +unsigned char i2c_readreg(unsigned char theSlave, unsigned char theReg); + +/* Low level I2C */ +int i2c_start(void); +int i2c_stop(void); +int i2c_outbyte(unsigned char x); +unsigned char i2c_inbyte(void); +int i2c_getack(void); +void i2c_sendack(void); +void i2c_sendnack(void); + +/**GVC**/ +/* New low level I2C functions */ +int i2c_read( unsigned char slave, unsigned char* rbuf, unsigned char rlen ); +int i2c_write( unsigned char slave, unsigned char* wbuf, unsigned char wlen ); +int i2c_writeread( unsigned char slave + , unsigned char* wbuf + , unsigned char wlen + , unsigned char* rbuf + , unsigned char rlen + ); +/**END GVC**/ +#endif /* _I2C_H */ -- cgit v1.2.3