1/* 2 * MV-643XX ethernet platform device data definition file. 3 */ 4#ifndef __LINUX_MV643XX_ETH_H 5#define __LINUX_MV643XX_ETH_H 6 7#define MV643XX_ETH_SHARED_NAME "mv643xx_eth_shared" 8#define MV643XX_ETH_NAME "mv643xx_eth" 9#define MV643XX_ETH_SHARED_REGS 0x2000 10#define MV643XX_ETH_SHARED_REGS_SIZE 0x2000 11#define MV643XX_ETH_BAR_4 0x2220 12#define MV643XX_ETH_SIZE_REG_4 0x2224 13#define MV643XX_ETH_BASE_ADDR_ENABLE_REG 0x2290 14 15struct mv643xx_eth_platform_data { 16 int port_number; 17 u16 force_phy_addr; /* force override if phy_addr == 0 */ 18 u16 phy_addr; 19 20 /* If speed is 0, then speed and duplex are autonegotiated. */ 21 int speed; /* 0, SPEED_10, SPEED_100, SPEED_1000 */ 22 int duplex; /* DUPLEX_HALF or DUPLEX_FULL */ 23 24 /* non-zero values of the following fields override defaults */ 25 u32 tx_queue_size; 26 u32 rx_queue_size; 27 u32 tx_sram_addr; 28 u32 tx_sram_size; 29 u32 rx_sram_addr; 30 u32 rx_sram_size; 31 u8 mac_addr[6]; /* mac address if non-zero*/ 32}; 33 34#endif /* __LINUX_MV643XX_ETH_H */