diff options
author | Edward Cree <ecree@solarflare.com> | 2017-01-17 15:02:12 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-01-17 23:49:52 +0300 |
commit | a707d18851a3bab517e21a6449806e468703bc3d (patch) | |
tree | 96ef17cb3a7add82649c6c0ed61ae32fb40ce357 /drivers/net/ethernet/sfc/net_driver.h | |
parent | f74d1995192cd0834eea13a8287a3e26a7317b6d (diff) | |
download | linux-a707d18851a3bab517e21a6449806e468703bc3d.tar.xz |
sfc: read back RX hash config from the NIC when querying it with ethtool -x
Ensures that we report the key and indirection table the NIC is using,
rather than (if setting them failed earlier) what we wanted it to use.
Signed-off-by: Edward Cree <ecree@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/sfc/net_driver.h')
-rw-r--r-- | drivers/net/ethernet/sfc/net_driver.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/sfc/net_driver.h b/drivers/net/ethernet/sfc/net_driver.h index ad53551b2c54..5927c20ba43f 100644 --- a/drivers/net/ethernet/sfc/net_driver.h +++ b/drivers/net/ethernet/sfc/net_driver.h @@ -1181,6 +1181,7 @@ struct efx_mtd_partition { * @tx_remove: Free resources for TX queue * @tx_write: Write TX descriptors and doorbell * @rx_push_rss_config: Write RSS hash key and indirection table to the NIC + * @rx_pull_rss_config: Read RSS hash key and indirection table back from the NIC * @rx_probe: Allocate resources for RX queue * @rx_init: Initialise RX queue on the NIC * @rx_remove: Free resources for RX queue @@ -1312,6 +1313,7 @@ struct efx_nic_type { dma_addr_t dma_addr, unsigned int len); int (*rx_push_rss_config)(struct efx_nic *efx, bool user, const u32 *rx_indir_table, const u8 *key); + int (*rx_pull_rss_config)(struct efx_nic *efx); int (*rx_probe)(struct efx_rx_queue *rx_queue); void (*rx_init)(struct efx_rx_queue *rx_queue); void (*rx_remove)(struct efx_rx_queue *rx_queue); |