at v3.6 1.7 kB view raw
1/* 2 * Texas Instruments Ethernet Switch Driver 3 * 4 * Copyright (C) 2012 Texas Instruments 5 * 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. 9 * 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. 14 */ 15#ifndef __CPSW_H__ 16#define __CPSW_H__ 17 18#include <linux/if_ether.h> 19 20struct cpsw_slave_data { 21 u32 slave_reg_ofs; 22 u32 sliver_reg_ofs; 23 const char *phy_id; 24 int phy_if; 25 u8 mac_addr[ETH_ALEN]; 26}; 27 28struct 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 */ 33 34 u32 slaves; /* number of slave cpgmac ports */ 35 struct cpsw_slave_data *slave_data; 36 37 u32 ale_reg_ofs; /* address lookup engine reg offset */ 38 u32 ale_entries; /* ale table size */ 39 40 u32 host_port_reg_ofs; /* cpsw cpdma host port registers */ 41 u32 host_port_num; /* The port number for the host port */ 42 43 u32 hw_stats_reg_ofs; /* cpsw hardware statistics counters */ 44 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*/ 49 50 u32 rx_descs; /* Number of Rx Descriptios */ 51 52 u32 mac_control; /* Mac control register */ 53}; 54 55#endif /* __CPSW_H__ */