common/sfc_efx/base: add function control window lookup API
authorIgor Romanov <igor.romanov@oktetlabs.ru>
Thu, 24 Sep 2020 12:12:19 +0000 (13:12 +0100)
committerFerruh Yigit <ferruh.yigit@intel.com>
Wed, 30 Sep 2020 17:19:12 +0000 (19:19 +0200)
commita45edfce345820a15676cdb1c17282520c153459
treead278cf2b7bd812fa24ae082fd64b6ee8a5295f9
parent341bd4e07d6615ecc22a8c5bdf4c53efe414cb55
common/sfc_efx/base: add function control window lookup API

Riverhead NIC may provide a locator of function control window
(EF100 resource locator).
The locator may be present in a Xilinx capabilities table which
itself is located by looking into extended PCI capabilities.

PCI capabilities are made possible to access by adding PCI config
space interface to efsys.

APIs are implemented to facilitate function control window lookup:
 - API to find an extended PCI capability given a capability ID;
 - API to read Xilinx PCI capability;

Signed-off-by: Igor Romanov <igor.romanov@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
Reviewed-by: Andy Moreton <amoreton@xilinx.com>
drivers/common/sfc_efx/base/efx.h
drivers/common/sfc_efx/base/efx_check.h
drivers/common/sfc_efx/base/efx_impl.h
drivers/common/sfc_efx/base/efx_nic.c
drivers/common/sfc_efx/base/efx_pci.c [new file with mode: 0644]
drivers/common/sfc_efx/base/meson.build
drivers/common/sfc_efx/base/rhead_impl.h
drivers/common/sfc_efx/base/rhead_pci.c [new file with mode: 0644]
drivers/common/sfc_efx/efsys.h
drivers/common/sfc_efx/rte_common_sfc_efx_version.map