blob: 6205eeba392b6b72d80d26bb55ce1b5df8b48afe [file] [log] [blame]
Yoshinori Sato71557a32008-08-06 19:49:00 -04001#ifndef __ASM_SH_ETH_H__
2#define __ASM_SH_ETH_H__
3
Yoshihiro Shimodae47c9052011-03-07 21:59:45 +00004#include <linux/phy.h>
Joe Perches574e2af2013-08-01 16:17:48 -07005#include <linux/if_ether.h>
Yoshihiro Shimodae47c9052011-03-07 21:59:45 +00006
Yoshinori Sato71557a32008-08-06 19:49:00 -04007enum {EDMAC_LITTLE_ENDIAN, EDMAC_BIG_ENDIAN};
Yoshihiro Shimoda4a555302011-03-07 21:59:26 +00008enum {
9 SH_ETH_REG_GIGABIT,
Sergei Shtylyova3f109b2013-03-28 11:51:31 +000010 SH_ETH_REG_FAST_RCAR,
Yoshihiro Shimoda4a555302011-03-07 21:59:26 +000011 SH_ETH_REG_FAST_SH4,
12 SH_ETH_REG_FAST_SH3_SH2
13};
Yoshinori Sato71557a32008-08-06 19:49:00 -040014
15struct sh_eth_plat_data {
16 int phy;
17 int edmac_endian;
Yoshihiro Shimoda4a555302011-03-07 21:59:26 +000018 int register_type;
Yoshihiro Shimodae47c9052011-03-07 21:59:45 +000019 phy_interface_t phy_interface;
Yoshihiro Shimoda8eac3f62011-09-27 21:49:05 +000020 void (*set_mdio_gate)(void *addr);
Yoshihiro Shimoda49235762009-08-27 23:25:03 +000021
Joe Perches574e2af2013-08-01 16:17:48 -070022 unsigned char mac_addr[ETH_ALEN];
Yoshihiro Shimoda49235762009-08-27 23:25:03 +000023 unsigned no_ether_link:1;
24 unsigned ether_link_active_low:1;
Yoshihiro Shimoda150647f2012-02-15 17:54:56 +000025 unsigned needs_init:1;
Yoshinori Sato71557a32008-08-06 19:49:00 -040026};
27
28#endif