KM: define CONFIG_SYS_I2C_INIT_BOARD only for concerned board
This must be defined for all the keymile boards that use the common i2c_abort function that is used to "reset" the I2C bus. These are currently km82xx and km_arm boards. The km83xx boards use other functions and thus do not need this. This patch removes the CONFIG_SYS_I2C_INIT_BOARD from keymile-common.h and defines it for km_arm.h and km82xx.h. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
This commit is contained in:
parent
7c3d6a29cd
commit
0a4f88b98c
@ -24,10 +24,6 @@
|
|||||||
#include "common.h"
|
#include "common.h"
|
||||||
#include <i2c.h>
|
#include <i2c.h>
|
||||||
|
|
||||||
#if !defined(CONFIG_MPC83xx)
|
|
||||||
static void i2c_write_start_seq(void);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
DECLARE_GLOBAL_DATA_PTR;
|
DECLARE_GLOBAL_DATA_PTR;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -78,7 +74,6 @@ int set_km_env(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#if defined(CONFIG_SYS_I2C_INIT_BOARD)
|
#if defined(CONFIG_SYS_I2C_INIT_BOARD)
|
||||||
#if !defined(CONFIG_MPC83xx)
|
|
||||||
static void i2c_write_start_seq(void)
|
static void i2c_write_start_seq(void)
|
||||||
{
|
{
|
||||||
set_sda(1);
|
set_sda(1);
|
||||||
@ -101,21 +96,6 @@ static void i2c_write_start_seq(void)
|
|||||||
*/
|
*/
|
||||||
int i2c_make_abort(void)
|
int i2c_make_abort(void)
|
||||||
{
|
{
|
||||||
|
|
||||||
#if defined(CONFIG_HARD_I2C) && !defined(MACH_TYPE_KM_KIRKWOOD)
|
|
||||||
immap_t *immap = (immap_t *)CONFIG_SYS_IMMR;
|
|
||||||
i2c8260_t *i2c = (i2c8260_t *)&immap->im_i2c;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* disable I2C controller first, otherwhise it thinks we want to
|
|
||||||
* talk to the slave port...
|
|
||||||
*/
|
|
||||||
clrbits_8(&i2c->i2c_i2mod, 0x01);
|
|
||||||
|
|
||||||
/* Set the PortPins to GPIO */
|
|
||||||
setports(1);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
int scl_state = 0;
|
int scl_state = 0;
|
||||||
int sda_state = 0;
|
int sda_state = 0;
|
||||||
int i = 0;
|
int i = 0;
|
||||||
@ -148,13 +128,8 @@ int i2c_make_abort(void)
|
|||||||
set_sda(1);
|
set_sda(1);
|
||||||
get_sda();
|
get_sda();
|
||||||
|
|
||||||
#if defined(CONFIG_HARD_I2C)
|
|
||||||
/* Set the PortPins back to use for I2C */
|
|
||||||
setports(0);
|
|
||||||
#endif
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* i2c_init_board - reset i2c bus. When the board is powercycled during a
|
* i2c_init_board - reset i2c bus. When the board is powercycled during a
|
||||||
|
@ -63,8 +63,6 @@
|
|||||||
#define CONFIG_LOADS_ECHO
|
#define CONFIG_LOADS_ECHO
|
||||||
#define CONFIG_SYS_LOADS_BAUD_CHANGE
|
#define CONFIG_SYS_LOADS_BAUD_CHANGE
|
||||||
|
|
||||||
#define CONFIG_SYS_I2C_INIT_BOARD
|
|
||||||
|
|
||||||
/* Support the IVM EEprom */
|
/* Support the IVM EEprom */
|
||||||
#define CONFIG_SYS_IVM_EEPROM_ADR 0x50
|
#define CONFIG_SYS_IVM_EEPROM_ADR 0x50
|
||||||
#define CONFIG_SYS_IVM_EEPROM_MAX_LEN 0x400
|
#define CONFIG_SYS_IVM_EEPROM_MAX_LEN 0x400
|
||||||
|
@ -176,10 +176,9 @@
|
|||||||
#undef CONFIG_I2C_MVTWSI
|
#undef CONFIG_I2C_MVTWSI
|
||||||
#define CONFIG_SYS_I2C
|
#define CONFIG_SYS_I2C
|
||||||
#define CONFIG_SYS_I2C_SOFT /* I2C bit-banged */
|
#define CONFIG_SYS_I2C_SOFT /* I2C bit-banged */
|
||||||
|
#define CONFIG_SYS_I2C_INIT_BOARD
|
||||||
|
|
||||||
#define CONFIG_KIRKWOOD_GPIO /* Enable GPIO Support */
|
#define CONFIG_KIRKWOOD_GPIO /* Enable GPIO Support */
|
||||||
#if defined(CONFIG_SYS_I2C_SOFT)
|
|
||||||
|
|
||||||
#define CONFIG_SYS_NUM_I2C_BUSES 6
|
#define CONFIG_SYS_NUM_I2C_BUSES 6
|
||||||
#define CONFIG_SYS_I2C_MAX_HOPS 1
|
#define CONFIG_SYS_I2C_MAX_HOPS 1
|
||||||
#define CONFIG_SYS_I2C_BUSES { {0, {I2C_NULL_HOP} }, \
|
#define CONFIG_SYS_I2C_BUSES { {0, {I2C_NULL_HOP} }, \
|
||||||
@ -214,7 +213,6 @@ int get_scl(void);
|
|||||||
|
|
||||||
#define CONFIG_SYS_I2C_SOFT_SLAVE 0x0
|
#define CONFIG_SYS_I2C_SOFT_SLAVE 0x0
|
||||||
#define CONFIG_SYS_I2C_SOFT_SPEED 100000
|
#define CONFIG_SYS_I2C_SOFT_SPEED 100000
|
||||||
#endif
|
|
||||||
|
|
||||||
/* EEprom support 24C128, 24C256 valid for environment eeprom */
|
/* EEprom support 24C128, 24C256 valid for environment eeprom */
|
||||||
#define CONFIG_SYS_I2C_MULTI_EEPROMS
|
#define CONFIG_SYS_I2C_MULTI_EEPROMS
|
||||||
|
@ -227,6 +227,7 @@
|
|||||||
/* enable I2C and select the hardware/software driver */
|
/* enable I2C and select the hardware/software driver */
|
||||||
#define CONFIG_SYS_I2C
|
#define CONFIG_SYS_I2C
|
||||||
#define CONFIG_SYS_I2C_SOFT /* I2C bit-banged */
|
#define CONFIG_SYS_I2C_SOFT /* I2C bit-banged */
|
||||||
|
#define CONFIG_SYS_I2C_INIT_BOARD
|
||||||
#define CONFIG_SYS_NUM_I2C_BUSES 3
|
#define CONFIG_SYS_NUM_I2C_BUSES 3
|
||||||
#define CONFIG_SYS_I2C_MAX_HOPS 1
|
#define CONFIG_SYS_I2C_MAX_HOPS 1
|
||||||
#define CONFIG_SYS_I2C_SOFT_SPEED 50000
|
#define CONFIG_SYS_I2C_SOFT_SPEED 50000
|
||||||
@ -237,6 +238,7 @@
|
|||||||
{0, {{I2C_MUX_PCA9542, 0x70, 1} } } }
|
{0, {{I2C_MUX_PCA9542, 0x70, 1} } } }
|
||||||
|
|
||||||
#define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/
|
#define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/
|
||||||
|
#define CONFIG_KM_I2C_ABORT
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Software (bit-bang) I2C driver configuration
|
* Software (bit-bang) I2C driver configuration
|
||||||
|
Loading…
Reference in New Issue
Block a user