memcpy(dev->perm_addr, dev->dev_addr, dev->addr_len); 
static __devinit struct net_device *sky2_init_netdev(struct sky2_hw *hw,						     unsigned port, int highmem){	struct sky2_port *sky2;	struct net_device *dev = alloc_etherdev(sizeof(*sky2));	if (!dev) {		printk(KERN_ERR "sky2 etherdev alloc failed");		return NULL;	}	SET_MODULE_OWNER(dev);	SET_NETDEV_DEV(dev, &hw->pdev->dev);	dev->open = sky2_up;	dev->stop = sky2_down;	dev->hard_start_xmit = sky2_xmit_frame;	dev->get_stats = sky2_get_stats;	dev->set_multicast_list = sky2_set_multicast;	dev->set_mac_address = sky2_set_mac_address;	dev->change_mtu = sky2_change_mtu;	SET_ETHTOOL_OPS(dev, &sky2_ethtool_ops);	dev->tx_timeout = sky2_tx_timeout;	dev->watchdog_timeo = TX_WATCHDOG;	if (port == 0)		dev->poll = sky2_poll;	dev->weight = NAPI_WEIGHT;#ifdef CONFIG_NET_POLL_CONTROLLER	dev->poll_controller = sky2_netpoll;#endif	sky2 = netdev_priv(dev);	sky2->netdev = dev;	sky2->hw = hw;	sky2->msg_enable = netif_msg_init(debug, default_msg);	spin_lock_init(&sky2->tx_lock);	/* Auto speed and flow control */	sky2->autoneg = AUTONEG_ENABLE;	sky2->tx_pause = 0;	sky2->rx_pause = 1;	sky2->duplex = -1;	sky2->speed = -1;	sky2->advertising = sky2_supported_modes(hw);	sky2->rx_csum = 1;	tasklet_init(&sky2->phy_task, sky2_phy_task, (unsigned long)sky2);	sky2->tx_pending = TX_DEF_PENDING;	sky2->rx_pending = is_ec_a1(hw) ? 8 : RX_DEF_PENDING;	hw->dev[port] = dev;	sky2->port = port;	dev->features |= NETIF_F_LLTX | NETIF_F_TSO;	if (highmem)		dev->features |= NETIF_F_HIGHDMA;	dev->features |= NETIF_F_IP_CSUM | NETIF_F_SG;#ifdef SKY2_VLAN_TAG_USED	dev->features |= NETIF_F_HW_VLAN_TX | NETIF_F_HW_VLAN_RX;	dev->vlan_rx_register = sky2_vlan_rx_register;	dev->vlan_rx_kill_vid = sky2_vlan_rx_kill_vid;#endif	/* read the mac address */	memcpy_fromio(dev->dev_addr, hw->regs + B2_MAC_1 + port * 8, ETH_ALEN);	/* device is off until link detection */	netif_carrier_off(dev);	netif_stop_queue(dev);	return dev;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/2995bfb7855aabd493f840af361f3dd7d221caea/sky2.c/clean/drivers/net/sky2.c