From ec0a362ea29be4254f49da67c7154fb73fedd75d Mon Sep 17 00:00:00 2001 From: Daniel Ankers Date: Sat, 27 Jan 2007 20:09:57 +0000 Subject: More PortalPlayer I2C unification work git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12128 a1c6a512-1295-4272-9138-f99709370657 --- firmware/export/i2c-pp.h | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 firmware/export/i2c-pp.h (limited to 'firmware/export/i2c-pp.h') diff --git a/firmware/export/i2c-pp.h b/firmware/export/i2c-pp.h new file mode 100644 index 0000000..1dc5bc3 --- /dev/null +++ b/firmware/export/i2c-pp.h @@ -0,0 +1,46 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * $Id$ + * + * Copyright (C) 2002 by Linus Nielsen Feltzing + * + * All files in this archive are subject to the GNU General Public License. + * See the file COPYING in the source tree root for full license agreement. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ + +/* + * PortalPlayer i2c driver + * + */ + +#ifndef _I2C_PP_H +#define _I2C_PP_H + +#define I2C_CTRL (*(volatile unsigned char*)(I2C_BASE+0x00)) +#define I2C_ADDR (*(volatile unsigned char*)(I2C_BASE+0x04)) +#define I2C_DATA(X) (*(volatile unsigned char*)(I2C_BASE+0xc+(4*X))) +#define I2C_STATUS (*(volatile unsigned char*)(I2C_BASE+0x1c)) + +/* I2C_CTRL bit definitions */ +#define I2C_SEND 0x80 + +/* I2C_STATUS bit definitions */ +#define I2C_BUSY (1<<6) + +/* TODO: Fully implement i2c driver */ + +void i2c_init(void); +int i2c_readbyte(unsigned int dev_addr, int addr); +int pp_i2c_send(unsigned int addr, int data0, int data1); +int i2c_readbytes(unsigned int dev_addr, int addr, int len, unsigned char *data); + +#endif -- cgit v1.1