1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef BOARD_BCM963XX_H_ 3 #define BOARD_BCM963XX_H_ 4 5 #include <linux/types.h> 6 #include <linux/gpio.h> 7 #include <linux/leds.h> 8 #include <bcm63xx_dev_enet.h> 9 #include <bcm63xx_dev_usb_usbd.h> 10 #include <bcm63xx_dev_dsp.h> 11 12 /* 13 * flash mapping 14 */ 15 #define BCM963XX_CFE_VERSION_OFFSET 0x570 16 #define BCM963XX_NVRAM_OFFSET 0x580 17 18 /* 19 * board definition 20 */ 21 struct board_info { 22 u8 name[16]; 23 unsigned int expected_cpu_id; 24 25 /* enabled feature/device */ 26 unsigned int has_enet0:1; 27 unsigned int has_enet1:1; 28 unsigned int has_enetsw:1; 29 unsigned int has_pci:1; 30 unsigned int has_pccard:1; 31 unsigned int has_ohci0:1; 32 unsigned int has_ehci0:1; 33 unsigned int has_usbd:1; 34 unsigned int has_dsp:1; 35 unsigned int has_uart0:1; 36 unsigned int has_uart1:1; 37 38 /* ethernet config */ 39 struct bcm63xx_enet_platform_data enet0; 40 struct bcm63xx_enet_platform_data enet1; 41 struct bcm63xx_enetsw_platform_data enetsw; 42 43 /* USB config */ 44 struct bcm63xx_usbd_platform_data usbd; 45 46 /* DSP config */ 47 struct bcm63xx_dsp_platform_data dsp; 48 49 /* GPIO LEDs */ 50 struct gpio_led leds[5]; 51 52 /* External PHY reset GPIO */ 53 unsigned int ephy_reset_gpio; 54 55 /* External PHY reset GPIO flags from gpio.h */ 56 unsigned long ephy_reset_gpio_flags; 57 }; 58 59 #endif /* ! BOARD_BCM963XX_H_ */ 60