From 5e765b2ea2962b86c460a67968d4977f3aa55ca3 Mon Sep 17 00:00:00 2001 From: Barry Wardell Date: Sat, 27 Jan 2007 14:22:24 +0000 Subject: Clean up PP5020 I2C code (no functional changes): Move into target tree. Use #defines instead of inb/outb. Whitespace cleanup. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12123 a1c6a512-1295-4272-9138-f99709370657 --- firmware/export/i2c-pp5020.h | 11 +++++++++++ firmware/export/pp5020.h | 3 +++ 2 files changed, 14 insertions(+) (limited to 'firmware/export') diff --git a/firmware/export/i2c-pp5020.h b/firmware/export/i2c-pp5020.h index b8b10d6388..c52d07d24f 100644 --- a/firmware/export/i2c-pp5020.h +++ b/firmware/export/i2c-pp5020.h @@ -25,6 +25,17 @@ #ifndef _I2C_PP5020_H #define _I2C_PP5020_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); diff --git a/firmware/export/pp5020.h b/firmware/export/pp5020.h index cbae083913..a71ca7ef05 100644 --- a/firmware/export/pp5020.h +++ b/firmware/export/pp5020.h @@ -126,6 +126,7 @@ #define DEV_EN (*(volatile unsigned long *)(0x6000600c)) #define DEV_SYSTEM 0x4 +#define DEV_I2C 0x1000 #define DEV_USB 0x400000 #define DEV_INIT (*(volatile unsigned long *)(0x70000020)) @@ -163,6 +164,8 @@ #define SER1_MASK (1 << (SER1_IRQ-32)) #define I2C_MASK (1 << (I2C_IRQ-32)) +#define I2C_BASE 0x7000c000 + #define IISCONFIG (*(volatile unsigned long*)(0x70002800)) #define IISFIFO_CFG (*(volatile unsigned long*)(0x7000280c)) -- cgit v1.2.3