162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 262306a36Sopenharmony_ci#ifndef BOARD_BCM963XX_H_ 362306a36Sopenharmony_ci#define BOARD_BCM963XX_H_ 462306a36Sopenharmony_ci 562306a36Sopenharmony_ci#include <linux/types.h> 662306a36Sopenharmony_ci#include <linux/gpio.h> 762306a36Sopenharmony_ci#include <linux/leds.h> 862306a36Sopenharmony_ci#include <bcm63xx_dev_enet.h> 962306a36Sopenharmony_ci#include <bcm63xx_dev_usb_usbd.h> 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci/* 1262306a36Sopenharmony_ci * flash mapping 1362306a36Sopenharmony_ci */ 1462306a36Sopenharmony_ci#define BCM963XX_CFE_VERSION_OFFSET 0x570 1562306a36Sopenharmony_ci#define BCM963XX_NVRAM_OFFSET 0x580 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ci/* 1862306a36Sopenharmony_ci * board definition 1962306a36Sopenharmony_ci */ 2062306a36Sopenharmony_cistruct board_info { 2162306a36Sopenharmony_ci u8 name[16]; 2262306a36Sopenharmony_ci unsigned int expected_cpu_id; 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ci /* enabled feature/device */ 2562306a36Sopenharmony_ci unsigned int has_enet0:1; 2662306a36Sopenharmony_ci unsigned int has_enet1:1; 2762306a36Sopenharmony_ci unsigned int has_enetsw:1; 2862306a36Sopenharmony_ci unsigned int has_pci:1; 2962306a36Sopenharmony_ci unsigned int has_pccard:1; 3062306a36Sopenharmony_ci unsigned int has_ohci0:1; 3162306a36Sopenharmony_ci unsigned int has_ehci0:1; 3262306a36Sopenharmony_ci unsigned int has_usbd:1; 3362306a36Sopenharmony_ci unsigned int has_uart0:1; 3462306a36Sopenharmony_ci unsigned int has_uart1:1; 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ci /* ethernet config */ 3762306a36Sopenharmony_ci struct bcm63xx_enet_platform_data enet0; 3862306a36Sopenharmony_ci struct bcm63xx_enet_platform_data enet1; 3962306a36Sopenharmony_ci struct bcm63xx_enetsw_platform_data enetsw; 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ci /* USB config */ 4262306a36Sopenharmony_ci struct bcm63xx_usbd_platform_data usbd; 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ci /* GPIO LEDs */ 4562306a36Sopenharmony_ci struct gpio_led leds[5]; 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_ci /* External PHY reset GPIO */ 4862306a36Sopenharmony_ci unsigned int ephy_reset_gpio; 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ci /* External PHY reset GPIO flags from gpio.h */ 5162306a36Sopenharmony_ci unsigned long ephy_reset_gpio_flags; 5262306a36Sopenharmony_ci}; 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ci#endif /* ! BOARD_BCM963XX_H_ */ 55