File diff d0a14f973771 → 1efda0e3054b
vmkdrivers/src_9/drivers/net/ixgbe/ixgbe_cna.c
Show inline comments
...
 
@@ -86,49 +86,54 @@ int ixgbe_cna_enable(struct ixgbe_adapter *adapter)
 
	netdev = adapter->netdev;       
 
	adapter->cnadev = cnadev;
 

	
 
	cnadev->priv = adapter;
 

	
 
	cnadev->open             = &ixgbe_cna_open;
 
	cnadev->stop             = &ixgbe_cna_close;
 
	cnadev->change_mtu       = &ixgbe_cna_change_mtu;
 
	cnadev->do_ioctl         = netdev->do_ioctl;
 
	cnadev->hard_start_xmit  = netdev->hard_start_xmit;
 
#ifdef NETIF_F_HW_VLAN_TX
 
	cnadev->vlan_rx_register = netdev->vlan_rx_register;
 
	cnadev->vlan_rx_add_vid  = netdev->vlan_rx_add_vid;
 
	cnadev->vlan_rx_kill_vid = netdev->vlan_rx_kill_vid;
 
#endif
 
	ixgbe_set_ethtool_ops(cnadev);
 

	
 
#ifdef CONFIG_DCB
 
	cnadev->dcbnl_ops = netdev->dcbnl_ops;
 
#endif
 

	
 
	cnadev->mtu = netdev->mtu;
 
	cnadev->pdev = netdev->pdev;
 
	cnadev->gso_max_size = GSO_MAX_SIZE;
 
#ifdef __VMKLNX__
 
	cnadev->features = netdev->features | NETIF_F_CNA |
 
                        NETIF_F_HW_VLAN_FILTER;
 
#else
 
   cnadev->features = netdev->features | NETIF_F_CNA;
 
#endif /*__VMKLNX__*/
 

	
 
	/* set the MAC address to SAN mac address */
 
	if (ixgbe_validate_mac_addr(adapter->hw.mac.san_addr) == 0)
 
		memcpy(cnadev->dev_addr,
 
		       adapter->hw.mac.san_addr,
 
		       cnadev->addr_len);
 

	
 
	if (adapter->hw.mac.type == ixgbe_mac_82599EB) {
 
		if (adapter->flags & IXGBE_FLAG_FCOE_ENABLED) {
 
			ixgbe_get_device_caps(&adapter->hw, &device_caps);
 
			if (!(device_caps & IXGBE_DEVICE_CAPS_FCOE_OFFLOADS)) {
 
				cnadev->features |= NETIF_F_FCOE_CRC;
 
				cnadev->ndo_fcoe_ddp_setup = &ixgbe_fcoe_ddp_get;
 
				cnadev->ndo_fcoe_ddp_done = &ixgbe_fcoe_ddp_put;
 
				cnadev->features |= NETIF_F_FSO;
 
				cnadev->features |= NETIF_F_FCOE_MTU;
 
				cnadev->fcoe_ddp_xid = IXGBE_FCOE_DDP_MAX - 1;
 
			}
 
		}
 
	}
 

	
 
	netif_carrier_off(cnadev);
 
	netif_tx_stop_all_queues(cnadev);