summaryrefslogtreecommitdiff
path: root/board/evb64260/i2c.c
diff options
context:
space:
mode:
Diffstat (limited to 'board/evb64260/i2c.c')
-rw-r--r--board/evb64260/i2c.c48
1 files changed, 22 insertions, 26 deletions
diff --git a/board/evb64260/i2c.c b/board/evb64260/i2c.c
index 88d0dac..573f31f 100644
--- a/board/evb64260/i2c.c
+++ b/board/evb64260/i2c.c
@@ -20,25 +20,22 @@ static void
i2c_init(int speed, int slaveaddr)
{
unsigned int n, m, freq, margin, power;
- unsigned int actualFreq, actualN=0, actualM=0;
+ unsigned int actualFreq, actualN = 0, actualM = 0;
unsigned int control, status;
unsigned int minMargin = 0xffffffff;
unsigned int tclk = 125000000;
DP(puts("i2c_init\n"));
- for(n = 0 ; n < 8 ; n++)
- {
- for(m = 0 ; m < 16 ; m++)
- {
+ for (n = 0 ; n < 8 ; n++) {
+ for (m = 0 ; m < 16 ; m++) {
power = 2<<n; /* power = 2^(n+1) */
freq = tclk/(10*(m+1)*power);
if (speed > freq)
margin = speed - freq;
else
margin = freq - speed;
- if(margin < minMargin)
- {
+ if (margin < minMargin) {
minMargin = margin;
actualFreq = freq;
actualN = n;
@@ -91,13 +88,13 @@ i2c_start(void)
udelay(I2C_DELAY);
if (count > 20) {
GT_REG_WRITE(I2C_CONTROL, (0x1 << 4)); /*stop*/
- return (status);
+ return status;
}
GT_REG_READ(I2C_STATUS_BAUDE_RATE, &status);
count++;
}
- return (0);
+ return 0;
}
static uchar
@@ -110,9 +107,8 @@ i2c_select_device(uchar dev_addr, uchar read, int ten_bit)
/* Output slave address */
- if (ten_bit) {
+ if (ten_bit)
bits = 10;
- }
data = (dev_addr << 1);
/* set the read bit */
@@ -129,7 +125,7 @@ i2c_select_device(uchar dev_addr, uchar read, int ten_bit)
udelay(I2C_DELAY);
if (count > 20) {
GT_REG_WRITE(I2C_CONTROL, (0x1 << 4)); /*stop*/
- return(status);
+ return status;
}
GT_REG_READ(I2C_STATUS_BAUDE_RATE, &status);
count++;
@@ -137,14 +133,14 @@ i2c_select_device(uchar dev_addr, uchar read, int ten_bit)
if (bits == 10) {
printf("10 bit I2C addressing not yet implemented\n");
- return (0xff);
+ return 0xff;
}
- return (0);
+ return 0;
}
static uchar
-i2c_get_data(uchar* return_data, int len) {
+i2c_get_data(uchar *return_data, int len) {
unsigned int data, status = 0;
int count = 0;
@@ -163,7 +159,7 @@ i2c_get_data(uchar* return_data, int len) {
count++;
while ((status & 0xff) != 0x50) {
udelay(I2C_DELAY);
- if(count > 2) {
+ if (count > 2) {
GT_REG_WRITE(I2C_CONTROL, (0x1 << 4)); /*stop*/
return 0;
}
@@ -178,16 +174,16 @@ i2c_get_data(uchar* return_data, int len) {
RESET_REG_BITS(I2C_CONTROL, BIT2|BIT3);
while ((status & 0xff) != 0x58) {
udelay(I2C_DELAY);
- if(count > 200) {
+ if (count > 200) {
GT_REG_WRITE(I2C_CONTROL, (0x1 << 4)); /*stop*/
- return (status);
+ return status;
}
GT_REG_READ(I2C_STATUS_BAUDE_RATE, &status);
count++;
}
GT_REG_WRITE(I2C_CONTROL, (0x1 << 4)); /* stop */
- return (0);
+ return 0;
}
static uchar
@@ -213,9 +209,9 @@ i2c_write_data(unsigned int data, int len)
count++;
while ((status & 0xff) != 0x28) {
udelay(I2C_DELAY);
- if(count > 20) {
+ if (count > 20) {
GT_REG_WRITE(I2C_CONTROL, (0x1 << 4)); /*stop*/
- return (status);
+ return status;
}
GT_REG_READ(I2C_STATUS_BAUDE_RATE, &status);
count++;
@@ -227,7 +223,7 @@ i2c_write_data(unsigned int data, int len)
udelay(I2C_DELAY * 10);
- return (0);
+ return 0;
}
static uchar
@@ -254,11 +250,11 @@ i2c_set_dev_offset(uchar dev_addr, unsigned int offset, int ten_bit)
return status;
}
- return (0);
+ return 0;
}
uchar
-i2c_read(uchar dev_addr, unsigned int offset, int len, uchar* data,
+i2c_read(uchar dev_addr, unsigned int offset, int len, uchar *data,
int ten_bit)
{
uchar status = 0;
@@ -266,7 +262,7 @@ i2c_read(uchar dev_addr, unsigned int offset, int len, uchar* data,
DP(puts("i2c_read\n"));
- i2c_init(i2cFreq,0);
+ i2c_init(i2cFreq, 0);
status = i2c_start();
@@ -285,7 +281,7 @@ i2c_read(uchar dev_addr, unsigned int offset, int len, uchar* data,
return status;
}
- i2c_init(i2cFreq,0);
+ i2c_init(i2cFreq, 0);
status = i2c_start();
if (status) {