[U-Boot] [PATCH V2 1/1] EXYNOS: Resolve the i2c compilation error for

amar_g amarendra.xt at samsung.com
Wed Jul 10 07:12:29 CEST 2013


This patch resolves the below mentioned compilation error of i2c driver 
for non-FDT case

Compilation error:
s3c24x0_i2c.c: In function 'board_i2c_init':
s3c24x0_i2c.c:544:18: error: 'CONFIG_MAX_I2C_NUM' undeclared (first use
in this function) s3c24x0_i2c.c:544:18: note: each undeclared
identifier is reported only once for each function it appears in
s3c24x0_i2c.c:545:3: warning: implicit declaration of function

Signed-off-by: Rajeshwari Shinde <rajeshwari.s at samsung.com>
Signed-off-by: Amar <amarendra.xt at samsung.com>
---
Changes since V0:
	1) Updated the below in response to review comments
		a) Added the prefix 'EXYNOS' to title of the patch.

Changes since V1:
	1) Updated the below in response to review comments
		a) Limited info on "Compilation error" message for 5 lines.
		b) Changed the spelling of 'mentiond' to 'mentioned'.

 board/samsung/smdk5250/smdk5250.c |   10 ++++++++++
 drivers/i2c/s3c24x0_i2c.c         |    9 +--------
 2 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/board/samsung/smdk5250/smdk5250.c b/board/samsung/smdk5250/smdk5250.c
index ae1f077..f1d3d97 100644
--- a/board/samsung/smdk5250/smdk5250.c
+++ b/board/samsung/smdk5250/smdk5250.c
@@ -332,6 +332,16 @@ static int board_uart_init(void)
 	return ret;
 }
 
+void board_i2c_init(const void *blob)
+{
+	int i;
+
+	for (i = 0; i < CONFIG_MAX_I2C_NUM; i++) {
+		exynos_pinmux_config((PERIPH_ID_I2C0 + i),
+				     PINMUX_FLAG_NONE);
+	}
+}
+
 #ifdef CONFIG_BOARD_EARLY_INIT_F
 int board_early_init_f(void)
 {
diff --git a/drivers/i2c/s3c24x0_i2c.c b/drivers/i2c/s3c24x0_i2c.c
index 3fc1c5b..382e4c2 100644
--- a/drivers/i2c/s3c24x0_i2c.c
+++ b/drivers/i2c/s3c24x0_i2c.c
@@ -515,10 +515,10 @@ int i2c_write(uchar chip, uint addr, int alen, uchar *buffer, int len)
 		 len) != 0);
 }
 
+#ifdef CONFIG_OF_CONTROL
 void board_i2c_init(const void *blob)
 {
 	int i;
-#ifdef CONFIG_OF_CONTROL
 	int node_list[CONFIG_MAX_I2C_NUM];
 	int count;
 
@@ -540,15 +540,8 @@ void board_i2c_init(const void *blob)
 		bus->bus_num = i2c_busses++;
 		exynos_pinmux_config(bus->id, 0);
 	}
-#else
-	for (i = 0; i < CONFIG_MAX_I2C_NUM; i++) {
-		exynos_pinmux_config((PERIPH_ID_I2C0 + i),
-				     PINMUX_FLAG_NONE);
-	}
-#endif
 }
 
-#ifdef CONFIG_OF_CONTROL
 static struct s3c24x0_i2c_bus *get_bus(unsigned int bus_idx)
 {
 	if (bus_idx < i2c_busses)
-- 
1.7.3.rc2



More information about the U-Boot mailing list