#ifndef BCM63XX_DEV_ENET_H_ #define BCM63XX_DEV_ENET_H_ #include <linux/if_ether.h> #include <linux/init.h> /* * on board ethernet platform data */ struct bcm63xx_enet_platform_data { char mac_addr[ETH_ALEN]; int has_phy; /* if has_phy, then set use_internal_phy */ int use_internal_phy; /* or fill phy info to use an external one */ int phy_id; int has_phy_interrupt; int phy_interrupt; /* if has_phy, use autonegociated pause parameters or force * them */ int pause_auto; int pause_rx; int pause_tx; /* if !has_phy, set desired forced speed/duplex */ int force_speed_100; int force_duplex_full; /* if !has_phy, set callback to perform mii device * init/remove */ int (*mii_config)(struct net_device *dev, int probe, int (*mii_read)(struct net_device *dev, int phy_id, int reg), void (*mii_write)(struct net_device *dev, int phy_id, int reg, int val)); }; int __init bcm63xx_enet_register(int unit, const struct bcm63xx_enet_platform_data *pd); #endif /* ! BCM63XX_DEV_ENET_H_ */