#include <asm/arch/sys_proto.h>
 #include <asm/mach-types.h>
 
+#include "eeprom.h"
+
 DECLARE_GLOBAL_DATA_PTR;
 
 const omap3_sysinfo sysinfo = {
        if (rc)
                return 0;
 
-#ifdef CONFIG_DRIVER_OMAP34XX_I2C
-       rc = i2c_read(0x50, 0, 1, enetaddr, 6);
+       rc = cm_t3x_eeprom_read_mac_addr(enetaddr);
        if (rc)
                return rc;
-#endif
 
        if (!is_valid_ether_addr(enetaddr))
                return -1;
 
 #define BOARD_REV_OFFSET_LEGACY                6
 #define BOARD_REV_SIZE                 4
 #define BOARD_REV_SIZE_LEGACY          2
+#define MAC_ADDR_OFFSET                        4
+#define MAC_ADDR_OFFSET_LEGACY         0
 
 #define LAYOUT_INVALID 0
 #define LAYOUT_LEGACY  0xff
        }
 }
 
+/*
+ * Routine: cm_t3x_eeprom_read_mac_addr
+ * Description: read mac address and store it in buf.
+ */
+int cm_t3x_eeprom_read_mac_addr(uchar *buf)
+{
+       uint offset;
+
+       if (eeprom_setup_layout())
+               return 0;
+
+       offset = (eeprom_layout != LAYOUT_LEGACY) ?
+                       MAC_ADDR_OFFSET : MAC_ADDR_OFFSET_LEGACY;
+       return cm_t3x_eeprom_read(offset, buf, 6);
+}
+
 /*
  * Routine: get_board_rev
  * Description: read system revision
 
--- /dev/null
+/*
+ * (C) Copyright 2011 CompuLab, Ltd. <www.compulab.co.il>
+ *
+ * Authors: Nikita Kiryanov <nikita@compulab.co.il>
+ *         Igor Grinberg <grinberg@compulab.co.il>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc.
+ */
+#ifndef _EEPROM_
+#define _EEPROM_
+
+#ifdef CONFIG_DRIVER_OMAP34XX_I2C
+int cm_t3x_eeprom_read_mac_addr(uchar *buf);
+#else
+static inline int cm_t3x_eeprom_read_mac_addr(uchar *buf)
+{
+       return 1;
+}
+#endif
+
+#endif