2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-26 22:24:09 +08:00

i40evf: store ring size in ring structs

Keep the descriptor ring size in the actual ring structs instead of in
the adapter struct. This enables us to use common tx and rx code with
the i40e PF driver.

Also update copyrights.

Change-ID: I2861e599b2b4c76441c062ea14400f4750f54d0e
Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Tested-by: Sibai Li <sibai.li@intel.com>
Signed-off-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Mitch Williams 2014-02-20 19:29:12 -08:00 committed by David S. Miller
parent d15632d486
commit 77d77f9f38
3 changed files with 8 additions and 10 deletions

View File

@ -196,8 +196,6 @@ struct i40evf_adapter {
/* RX */ /* RX */
struct i40e_ring *rx_rings[I40E_MAX_VSI_QP]; struct i40e_ring *rx_rings[I40E_MAX_VSI_QP];
int txd_count;
int rxd_count;
u64 hw_csum_rx_error; u64 hw_csum_rx_error;
int num_msix_vectors; int num_msix_vectors;
struct msix_entry *msix_entries; struct msix_entry *msix_entries;

View File

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Intel Ethernet Controller XL710 Family Linux Virtual Function Driver * Intel Ethernet Controller XL710 Family Linux Virtual Function Driver
* Copyright(c) 2013 Intel Corporation. * Copyright(c) 2013 - 2014 Intel Corporation.
* *
* This program is free software; you can redistribute it and/or modify it * This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU General Public License, * under the terms and conditions of the GNU General Public License,
@ -241,6 +241,7 @@ static int i40evf_set_ringparam(struct net_device *netdev,
{ {
struct i40evf_adapter *adapter = netdev_priv(netdev); struct i40evf_adapter *adapter = netdev_priv(netdev);
u32 new_rx_count, new_tx_count; u32 new_rx_count, new_tx_count;
int i;
if ((ring->rx_mini_pending) || (ring->rx_jumbo_pending)) if ((ring->rx_mini_pending) || (ring->rx_jumbo_pending))
return -EINVAL; return -EINVAL;
@ -256,12 +257,14 @@ static int i40evf_set_ringparam(struct net_device *netdev,
new_rx_count = ALIGN(new_rx_count, I40EVF_REQ_DESCRIPTOR_MULTIPLE); new_rx_count = ALIGN(new_rx_count, I40EVF_REQ_DESCRIPTOR_MULTIPLE);
/* if nothing to do return success */ /* if nothing to do return success */
if ((new_tx_count == adapter->txd_count) && if ((new_tx_count == adapter->tx_rings[0]->count) &&
(new_rx_count == adapter->rxd_count)) (new_rx_count == adapter->rx_rings[0]->count))
return 0; return 0;
adapter->txd_count = new_tx_count; for (i = 0; i < adapter->vsi_res->num_queue_pairs; i++) {
adapter->rxd_count = new_rx_count; adapter->tx_rings[0]->count = new_tx_count;
adapter->rx_rings[0]->count = new_rx_count;
}
if (netif_running(netdev)) if (netif_running(netdev))
i40evf_reinit_locked(adapter); i40evf_reinit_locked(adapter);

View File

@ -2025,9 +2025,6 @@ static void i40evf_init_task(struct work_struct *work)
adapter->flags |= I40EVF_FLAG_RX_CSUM_ENABLED; adapter->flags |= I40EVF_FLAG_RX_CSUM_ENABLED;
adapter->txd_count = I40EVF_DEFAULT_TXD;
adapter->rxd_count = I40EVF_DEFAULT_RXD;
netdev->netdev_ops = &i40evf_netdev_ops; netdev->netdev_ops = &i40evf_netdev_ops;
i40evf_set_ethtool_ops(netdev); i40evf_set_ethtool_ops(netdev);
netdev->watchdog_timeo = 5 * HZ; netdev->watchdog_timeo = 5 * HZ;