mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-12 21:46:47 +07:00
ixgbe: move setting RSC into a separate function
Move setting RSC into a separate function to allow for reuse in other parts of the code. Signed-off-by: Emil Tantilov <emil.s.tantilov@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
parent
e4911d57a4
commit
3a28926451
@ -459,6 +459,21 @@ static int ixgbe_set_rx_csum(struct net_device *netdev, u32 data)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void ixgbe_set_rsc(struct ixgbe_adapter *adapter)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < adapter->num_rx_queues; i++) {
|
||||
struct ixgbe_ring *ring = adapter->rx_ring[i];
|
||||
if (adapter->flags2 & IXGBE_FLAG2_RSC_ENABLED) {
|
||||
set_ring_rsc_enabled(ring);
|
||||
ixgbe_configure_rscctl(adapter, ring);
|
||||
} else {
|
||||
ixgbe_clear_rscctl(adapter, ring);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static u32 ixgbe_get_tx_csum(struct net_device *netdev)
|
||||
{
|
||||
return (netdev->features & NETIF_F_IP_CSUM) != 0;
|
||||
@ -2281,25 +2296,12 @@ static int ixgbe_set_flags(struct net_device *netdev, u32 data)
|
||||
} else {
|
||||
adapter->flags2 ^= IXGBE_FLAG2_RSC_ENABLED;
|
||||
switch (adapter->hw.mac.type) {
|
||||
case ixgbe_mac_X540:
|
||||
ixgbe_set_rsc(adapter);
|
||||
break;
|
||||
case ixgbe_mac_82599EB:
|
||||
need_reset = true;
|
||||
break;
|
||||
case ixgbe_mac_X540: {
|
||||
int i;
|
||||
for (i = 0; i < adapter->num_rx_queues; i++) {
|
||||
struct ixgbe_ring *ring =
|
||||
adapter->rx_ring[i];
|
||||
if (adapter->flags2 &
|
||||
IXGBE_FLAG2_RSC_ENABLED) {
|
||||
ixgbe_configure_rscctl(adapter,
|
||||
ring);
|
||||
} else {
|
||||
ixgbe_clear_rscctl(adapter,
|
||||
ring);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user