/* e1000_sw_init initializes the Adapter private data structure. Fields are initialized based on PCI device information and OS network device settings (MTU size).  */
static int __devinit e1000_sw_init(struct e1000_adapter *adapter)
/* e1000_sw_init initializes the Adapter private data structure. Fields are initialized based on PCI device information and OS network device settings (MTU size).  */
static int __devinit e1000_sw_init(struct e1000_adapter *adapter)
{
	struct net_device *netdev = adapter->netdev;
	adapter->rx_buffer_len = ETH_FRAME_LEN + VLAN_HLEN + ETH_FCS_LEN;
	adapter->rx_ps_bsize0 = 128;
	adapter->max_frame_size = netdev->mtu + ETH_HLEN + ETH_FCS_LEN;
	adapter->min_frame_size = ETH_ZLEN + ETH_FCS_LEN;
	e1000e_set_interrupt_capability(adapter);
	if (e1000_alloc_queues(adapter))
		return -ENOMEM;
	e1000_irq_disable(adapter);
	set_bit(__E1000_DOWN, &adapter->state);
	return 0;
}