[U-Boot] [PATCH] CMC-PU2 compile fix

Ladislav Michl ladis at linux-mips.org
Mon Mar 23 18:06:46 CET 2009


load_sernum_ethaddr.c:70: error: conflicting types for 'misc_init_r'
include/common.h:298: error: previous declaration of 'misc_init_r' was here
load_sernum_ethaddr.c: In function 'misc_init_r':
load_sernum_ethaddr.c:108: warning: implicit declaration of function 'eth_setenv_enetaddr'

(note that return value from misc_init_r is unused...)

Signed-off-by: Ladislav Michl <ladis at linux-mips.org>

diff --git a/board/cmc_pu2/load_sernum_ethaddr.c b/board/cmc_pu2/load_sernum_ethaddr.c
index 5ef9f20..eb5b52a 100644
--- a/board/cmc_pu2/load_sernum_ethaddr.c
+++ b/board/cmc_pu2/load_sernum_ethaddr.c
@@ -27,6 +27,7 @@
 /* #define DEBUG */
 
 #include <common.h>
+#include <net.h>
 
 #define I2C_CHIP	0x50	/* I2C bus address of onboard EEPROM */
 #define I2C_ALEN	1	/* length of EEPROM addresses in bytes */
@@ -66,7 +67,7 @@ int i2c_read (unsigned char chip, unsigned int addr, int alen,
  * Internal structure: see struct definition
  */
 
-void misc_init_r(void)
+int misc_init_r(void)
 {
 	struct manufacturer_data data;
 	char  serial [9];
@@ -80,7 +81,7 @@ void misc_init_r(void)
 	if (i2c_read(I2C_CHIP, I2C_OFFSET, I2C_ALEN, (unsigned char *)&data,
 		     sizeof(data)) != 0) {
 		puts ("Error reading manufacturer data from EEPROM\n");
-		return;
+		return 1;
 	}
 
 	/* check if manufacturer data block is valid  */
@@ -93,7 +94,7 @@ void misc_init_r(void)
 
 	if (chksum != data.chksum) {
 		puts ("Error: manufacturer data block has invalid checksum\n");
-		return;
+		return 1;
 	}
 
 	/* copy serial number */
@@ -107,4 +108,6 @@ void misc_init_r(void)
 	if (getenv("ethaddr") == NULL) {
 		eth_setenv_enetaddr("ethaddr", data.macadr);
 	}
+
+	return 0;
 }


More information about the U-Boot mailing list