Setup MAC addresses for routerboards
authorFlorian Fainelli <florian@openwrt.org>
Sun, 9 Dec 2007 14:43:42 +0000 (14:43 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Sun, 9 Dec 2007 14:43:42 +0000 (14:43 +0000)
SVN-Revision: 9682

target/linux/adm5120/files/arch/mips/adm5120/boards/mikrotik.c
target/linux/adm5120/files/arch/mips/adm5120/prom/routerboot.c

index d81e0cf33f003b7fd8146bd0bdeefaf0349b3f96..1ca151412b7677ddef96eb70a0e12690661bc63d 100644 (file)
@@ -43,6 +43,8 @@
 #include <adm5120_board.h>
 #include <adm5120_platform.h>
 #include <adm5120_cf.h>
+#include <adm5120_info.h>
+#include <prom/routerboot.h>
 
 #define RB1XX_NAND_CHIP_DELAY  25
 
@@ -62,6 +64,8 @@
 #define RB153_GPIO_CF_RDY      ADM5120_GPIO_P1L1
 #define RB153_GPIO_CF_WT       ADM5120_GPIO_P0L0
 
+extern struct rb_hard_settings rb_hs;
+
 /*--------------------------------------------------------------------------*/
 
 static struct adm5120_pci_irq rb1xx_pci_irqs[] __initdata = {
@@ -218,7 +222,12 @@ static void rb150_nand_cmd_ctrl(struct mtd_info *mtd, int cmd,
 
 static void __init rb1xx_mac_setup(void)
 {
-       /* TODO */
+       int i, j;
+       
+       for (i = 0; i < rb_hs.mac_count; i++) {
+               for (j = 0; j < RB_MAC_SIZE; j++)
+                       adm5120_eth_macs[i][j] = rb_hs.macs[i][j];
+       }
 }
 
 static void __init rb1xx_flash_setup(void)
index 47483450fd5e636b6404f84350e8b3151cd3c040..a93382dc8a029f5911f522b58eed1b9e676b7d96 100644 (file)
@@ -27,6 +27,7 @@
 #include <linux/kernel.h>
 #include <linux/init.h>
 #include <linux/string.h>
+#include <linux/module.h>
 
 #include <asm/bootinfo.h>
 #include <asm/addrspace.h>
@@ -35,7 +36,8 @@
 #include <prom/routerboot.h>
 #include "prom_read.h"
 
-static struct rb_hard_settings rb_hs;
+struct rb_hard_settings rb_hs;
+EXPORT_SYMBOL(rb_hs);
 static int rb_found;
 
 static int __init routerboot_load_hs(u8 *buf, u16 buflen)