Skip to contentSkip to conversation

board/freescale: Move CRC32 offset in NXID v1 data format

PATCH New Ebony Zhu 2 participants 2 messages Apr 25, 2014 – May 20, 2014

lore
Share & tools
lore

Ebony Zhu

author
#0 lore raw

PATCH 1/1 board/freescale: Move CRC32 offset in NXID v1 data format

According to AN3638, CRC of NXID v1 is at the end of the 256-byte I2C memory. The wrong CRC32 offset prevents Uboot from reading system information from EEPROM. No NXID v0 is being used on Freescale boards.

---
 board/freescale/common/sys_eeprom.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
board/freescale/common/sys_eeprom.c +4 -3
index 9c18dd8..1e212ad 100644
@@ -21,7 +21,7 @@
 /* some boards with non-256-bytes EEPROM have special define */
 /* for MAX_NUM_PORTS in board-specific file */
 #ifndef MAX_NUM_PORTS
-#define MAX_NUM_PORTS	23
+#define MAX_NUM_PORTS	16
 #endif
 #define NXID_VERSION	1
 #endif
@@ -58,8 +58,9 @@ static struct __attribute__ ((__packed__)) eeprom {
 	u8 res_1[21];     /* 0x2b - 0x3f Reserved */
 	u8 mac_count;     /* 0x40        Number of MAC addresses */
 	u8 mac_flag;      /* 0x41        MAC table flags */
-	u8 mac[MAX_NUM_PORTS][6];     /* 0x42 - x MAC addresses */
-	u32 crc;          /* x+1         CRC32 checksum */
+	u8 mac[MAX_NUM_PORTS][6];     /* 0x42 - 0xa1 MAC addresses */
+	u8 res_2[90];     /* 0xa2 - 0xfb Reserved */	
+	u32 crc;          /* 0xfc - 0xff CRC32 checksum */
 #endif
 } e;
 
Signature · 1 line
1.8.1.4
#1 lore raw

PATCH 1/1 board/freescale: Move CRC32 offset in NXID v1 data format

Quoted 7 lines · Ebony Zhu

According to AN3638, CRC of NXID v1 is at the end of the 256-byte I2C memory. The wrong CRC32 offset prevents Uboot from reading system information from EEPROM. No NXID v0 is being used on Freescale boards.

---

Applied to u-boot-mpc85xx/master.

York