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
{
25 u8 mac_addr
[ETH_ALEN
];
28 struct cpsw_platform_data
{
29 u32 ss_reg_ofs
; /* Subsystem control register offset */
30 u32 channels
; /* number of cpdma channels (symmetric) */
31 u32 cpdma_reg_ofs
; /* cpdma register offset */
32 u32 cpdma_sram_ofs
; /* cpdma sram offset */
34 u32 slaves
; /* number of slave cpgmac ports */
35 struct cpsw_slave_data
*slave_data
;
37 u32 ale_reg_ofs
; /* address lookup engine reg offset */
38 u32 ale_entries
; /* ale table size */
40 u32 host_port_reg_ofs
; /* cpsw cpdma host port registers */
41 u32 host_port_num
; /* The port number for the host port */
43 u32 hw_stats_reg_ofs
; /* cpsw hardware statistics counters */
45 u32 bd_ram_ofs
; /* embedded buffer descriptor RAM offset*/
46 u32 bd_ram_size
; /*buffer descriptor ram size */
47 u32 hw_ram_addr
; /*if the HW address for BD RAM is different */
48 bool no_bd_ram
; /* no embedded BD ram*/
50 u32 rx_descs
; /* Number of Rx Descriptios */
52 u32 mac_control
; /* Mac control register */
55 #endif /* __CPSW_H__ */