ixgbe: Add a RETA query command to VF-PF channel API
authorVlad Zolotarov <vladz@cloudius-systems.com>
Wed, 1 Apr 2015 08:24:54 +0000 (11:24 +0300)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Sat, 11 Apr 2015 05:44:19 +0000 (22:44 -0700)
commit4ce37a4c05cfb5bfd445419d5b880a91bb19228f
treeacc85b79cf97e71e6de12b0f42f50e876327de8f
parente65ce0d395c2822e568faedad8bcf5770d3cdcdf
ixgbe: Add a RETA query command to VF-PF channel API

Add this new command for 82599 and x540 devices only. Support for other
devices will be added later.

82599 and x540 VFs and PF share the same RSS redirection table (RETA).
Therefore we just return it for all VFs.

For 82599 and x540 RETA table is an array of 32 registers (128 bytes) and
the maximum number of registers that may be delivered in a single VF-PF
channel command is 15. On the other hand VFs of these devices can be
configured to have up to 4 RSS queues. Therefore we will "compress" the
RETA by transferring only 2 bits per entry and thereby it will take only 8
registers (DWORDS) to transfer the whole VF RETA.

Thus this patch does the following:

  - Adds a new API version (to specify a new commands set).
  - Adds the IXGBE_VF_GET_RETA command to the VF-PF commands set.

Signed-off-by: Vlad Zolotarov <vladz@cloudius-systems.com>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/ixgbe/ixgbe_mbx.h
drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c