deptest: Do not clobber the base build and staging dirs
[openwrt/svn-archive/archive.git] / target / linux / ifxmips / files-2.6.32 / arch / mips / ifxmips / danube / arcaydian.c
1 #include <linux/init.h>
2 #include <linux/module.h>
3 #include <linux/types.h>
4 #include <linux/string.h>
5 #include <linux/mtd/physmap.h>
6 #include <linux/kernel.h>
7 #include <linux/reboot.h>
8 #include <linux/platform_device.h>
9 #include <linux/leds.h>
10 #include <linux/etherdevice.h>
11 #include <linux/reboot.h>
12 #include <linux/time.h>
13 #include <linux/io.h>
14 #include <linux/gpio.h>
15
16 #include <ifxmips.h>
17 #include <ifxmips_prom.h>
18
19 #include "arcaydian.h"
20
21 static int ifxmips_brn = 1;
22
23 int __init
24 ifxmips_find_brn_mac(unsigned char *ifxmips_ethaddr)
25 {
26 unsigned char temp[8];
27 memcpy_fromio(temp,
28 (void *)KSEG1ADDR(IFXMIPS_FLASH_START + 0x800000 - 0x10000), 8);
29 if (!memcmp(temp, "BRN-BOOT", 8))
30 {
31 memcpy_fromio(ifxmips_ethaddr,
32 (void *)KSEG1ADDR(IFXMIPS_FLASH_START +
33 0x800000 - 0x10000 + 0x16), 6);
34 if (is_valid_ether_addr(ifxmips_ethaddr))
35 return 1;
36 } else {
37 ifxmips_brn = 0;
38 }
39 return 0;
40 }
41
42 int
43 ifxmips_has_brn_block(void)
44 {
45 return ifxmips_brn;
46 }
47 EXPORT_SYMBOL(ifxmips_has_brn_block);