Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[cascardo/linux.git] / arch / mips / include / asm / mach-bcm63xx / board_bcm963xx.h
1 #ifndef BOARD_BCM963XX_H_
2 #define BOARD_BCM963XX_H_
3
4 #include <linux/types.h>
5 #include <linux/gpio.h>
6 #include <linux/leds.h>
7 #include <bcm63xx_dev_enet.h>
8 #include <bcm63xx_dev_usb_usbd.h>
9 #include <bcm63xx_dev_dsp.h>
10
11 /*
12  * flash mapping
13  */
14 #define BCM963XX_CFE_VERSION_OFFSET     0x570
15 #define BCM963XX_NVRAM_OFFSET           0x580
16
17 /*
18  * nvram structure
19  */
20 struct bcm963xx_nvram {
21         u32     version;
22         u8      reserved1[256];
23         u8      name[16];
24         u32     main_tp_number;
25         u32     psi_size;
26         u32     mac_addr_count;
27         u8      mac_addr_base[6];
28         u8      reserved2[2];
29         u32     checksum_old;
30         u8      reserved3[720];
31         u32     checksum_high;
32 };
33
34 /*
35  * board definition
36  */
37 struct board_info {
38         u8              name[16];
39         unsigned int    expected_cpu_id;
40
41         /* enabled feature/device */
42         unsigned int    has_enet0:1;
43         unsigned int    has_enet1:1;
44         unsigned int    has_pci:1;
45         unsigned int    has_pccard:1;
46         unsigned int    has_ohci0:1;
47         unsigned int    has_ehci0:1;
48         unsigned int    has_usbd:1;
49         unsigned int    has_dsp:1;
50         unsigned int    has_uart0:1;
51         unsigned int    has_uart1:1;
52
53         /* ethernet config */
54         struct bcm63xx_enet_platform_data enet0;
55         struct bcm63xx_enet_platform_data enet1;
56
57         /* USB config */
58         struct bcm63xx_usbd_platform_data usbd;
59
60         /* DSP config */
61         struct bcm63xx_dsp_platform_data dsp;
62
63         /* GPIO LEDs */
64         struct gpio_led leds[5];
65 };
66
67 #endif /* ! BOARD_BCM963XX_H_ */