mirror of
https://github.com/torvalds/linux.git
synced 2025-12-07 20:06:24 +00:00
sfc: make TSO version a per-queue parameter
The Solarflare 8000 series NIC will use a new TSO scheme. The current driver refuses to load if the current TSO scheme is not found. Remove that check and instead make the TSO version a per-queue parameter. Signed-off-by: Bert Kenward <bkenward@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
02fff96a79
commit
93171b14a5
@@ -180,13 +180,6 @@ static int efx_ef10_init_datapath_caps(struct efx_nic *efx)
|
||||
nic_data->tx_dpcpu_fw_id =
|
||||
MCDI_WORD(outbuf, GET_CAPABILITIES_OUT_TX_DPCPU_FW_ID);
|
||||
|
||||
if (!(nic_data->datapath_caps &
|
||||
(1 << MC_CMD_GET_CAPABILITIES_OUT_TX_TSO_LBN))) {
|
||||
netif_err(efx, drv, efx->net_dev,
|
||||
"current firmware does not support TSO\n");
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
if (!(nic_data->datapath_caps &
|
||||
(1 << MC_CMD_GET_CAPABILITIES_OUT_RX_PREFIX_LEN_14_LBN))) {
|
||||
netif_err(efx, probe, efx->net_dev,
|
||||
@@ -1797,6 +1790,12 @@ static void efx_ef10_tx_init(struct efx_tx_queue *tx_queue)
|
||||
ESF_DZ_TX_OPTION_UDP_TCP_CSUM, csum_offload,
|
||||
ESF_DZ_TX_OPTION_IP_CSUM, csum_offload);
|
||||
tx_queue->write_count = 1;
|
||||
|
||||
if (nic_data->datapath_caps &
|
||||
(1 << MC_CMD_GET_CAPABILITIES_OUT_TX_TSO_LBN)) {
|
||||
tx_queue->tso_version = 1;
|
||||
}
|
||||
|
||||
wmb();
|
||||
efx_ef10_push_tx_desc(tx_queue, txd);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user