18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci#ifndef BOARD_BCM963XX_H_ 38c2ecf20Sopenharmony_ci#define BOARD_BCM963XX_H_ 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ci#include <linux/types.h> 68c2ecf20Sopenharmony_ci#include <linux/gpio.h> 78c2ecf20Sopenharmony_ci#include <linux/leds.h> 88c2ecf20Sopenharmony_ci#include <bcm63xx_dev_enet.h> 98c2ecf20Sopenharmony_ci#include <bcm63xx_dev_usb_usbd.h> 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ci/* 128c2ecf20Sopenharmony_ci * flash mapping 138c2ecf20Sopenharmony_ci */ 148c2ecf20Sopenharmony_ci#define BCM963XX_CFE_VERSION_OFFSET 0x570 158c2ecf20Sopenharmony_ci#define BCM963XX_NVRAM_OFFSET 0x580 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ci/* 188c2ecf20Sopenharmony_ci * board definition 198c2ecf20Sopenharmony_ci */ 208c2ecf20Sopenharmony_cistruct board_info { 218c2ecf20Sopenharmony_ci u8 name[16]; 228c2ecf20Sopenharmony_ci unsigned int expected_cpu_id; 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci /* enabled feature/device */ 258c2ecf20Sopenharmony_ci unsigned int has_enet0:1; 268c2ecf20Sopenharmony_ci unsigned int has_enet1:1; 278c2ecf20Sopenharmony_ci unsigned int has_enetsw:1; 288c2ecf20Sopenharmony_ci unsigned int has_pci:1; 298c2ecf20Sopenharmony_ci unsigned int has_pccard:1; 308c2ecf20Sopenharmony_ci unsigned int has_ohci0:1; 318c2ecf20Sopenharmony_ci unsigned int has_ehci0:1; 328c2ecf20Sopenharmony_ci unsigned int has_usbd:1; 338c2ecf20Sopenharmony_ci unsigned int has_uart0:1; 348c2ecf20Sopenharmony_ci unsigned int has_uart1:1; 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ci /* ethernet config */ 378c2ecf20Sopenharmony_ci struct bcm63xx_enet_platform_data enet0; 388c2ecf20Sopenharmony_ci struct bcm63xx_enet_platform_data enet1; 398c2ecf20Sopenharmony_ci struct bcm63xx_enetsw_platform_data enetsw; 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ci /* USB config */ 428c2ecf20Sopenharmony_ci struct bcm63xx_usbd_platform_data usbd; 438c2ecf20Sopenharmony_ci 448c2ecf20Sopenharmony_ci /* GPIO LEDs */ 458c2ecf20Sopenharmony_ci struct gpio_led leds[5]; 468c2ecf20Sopenharmony_ci 478c2ecf20Sopenharmony_ci /* External PHY reset GPIO */ 488c2ecf20Sopenharmony_ci unsigned int ephy_reset_gpio; 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci /* External PHY reset GPIO flags from gpio.h */ 518c2ecf20Sopenharmony_ci unsigned long ephy_reset_gpio_flags; 528c2ecf20Sopenharmony_ci}; 538c2ecf20Sopenharmony_ci 548c2ecf20Sopenharmony_ci#endif /* ! BOARD_BCM963XX_H_ */ 55