|
@@ -115,6 +115,32 @@ static struct spi_board_info da850evm_spi_info[] = {
|
|
|
},
|
|
|
};
|
|
|
|
|
|
+#ifdef CONFIG_MTD
|
|
|
+static void da850_evm_m25p80_notify_add(struct mtd_info *mtd)
|
|
|
+{
|
|
|
+ char *mac_addr = davinci_soc_info.emac_pdata->mac_addr;
|
|
|
+ size_t retlen;
|
|
|
+
|
|
|
+ if (!strcmp(mtd->name, "MAC-Address")) {
|
|
|
+ mtd->read(mtd, 0, ETH_ALEN, &retlen, mac_addr);
|
|
|
+ if (retlen == ETH_ALEN)
|
|
|
+ pr_info("Read MAC addr from SPI Flash: %pM\n",
|
|
|
+ mac_addr);
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+static struct mtd_notifier da850evm_spi_notifier = {
|
|
|
+ .add = da850_evm_m25p80_notify_add,
|
|
|
+};
|
|
|
+
|
|
|
+static void da850_evm_setup_mac_addr(void)
|
|
|
+{
|
|
|
+ register_mtd_user(&da850evm_spi_notifier);
|
|
|
+}
|
|
|
+#else
|
|
|
+static void da850_evm_setup_mac_addr(void) { }
|
|
|
+#endif
|
|
|
+
|
|
|
static struct mtd_partition da850_evm_norflash_partition[] = {
|
|
|
{
|
|
|
.name = "bootloaders + env",
|
|
@@ -1244,6 +1270,8 @@ static __init void da850_evm_init(void)
|
|
|
if (ret)
|
|
|
pr_warning("da850_evm_init: sata registration failed: %d\n",
|
|
|
ret);
|
|
|
+
|
|
|
+ da850_evm_setup_mac_addr();
|
|
|
}
|
|
|
|
|
|
#ifdef CONFIG_SERIAL_8250_CONSOLE
|