2 * Texas Instruments Ethernet Switch Driver
4 * Copyright (C) 2012 Texas Instruments
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License as
8 * published by the Free Software Foundation version 2.
10 * This program is distributed "as is" WITHOUT ANY WARRANTY of any
11 * kind, whether express or implied; without even the implied warranty
12 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
18 #include <linux/if_ether.h>
20 struct cpsw_slave_data
{
21 char phy_id
[MII_BUS_ID_SIZE
];
23 u8 mac_addr
[ETH_ALEN
];
24 u16 dual_emac_res_vlan
; /* Reserved VLAN for DualEMAC */
28 struct cpsw_platform_data
{
29 u32 ss_reg_ofs
; /* Subsystem control register offset */
30 u32 channels
; /* number of cpdma channels (symmetric) */
31 u32 slaves
; /* number of slave cpgmac ports */
32 struct cpsw_slave_data
*slave_data
;
33 u32 active_slave
; /* time stamping, ethtool and SIOCGMIIPHY slave */
34 u32 cpts_clock_mult
; /* convert input clock ticks to nanoseconds */
35 u32 cpts_clock_shift
; /* convert input clock ticks to nanoseconds */
36 u32 ale_entries
; /* ale table size */
37 u32 bd_ram_size
; /*buffer descriptor ram size */
38 u32 rx_descs
; /* Number of Rx Descriptios */
39 u32 mac_control
; /* Mac control register */
40 u16 default_vlan
; /* Def VLAN for ALE lookup in VLAN aware mode*/
41 bool dual_emac
; /* Enable Dual EMAC mode */
44 #endif /* __CPSW_H__ */