cxgb4: Use FW interface to get BAR0 value
authorHariprasad Shenai <hariprasad@chelsio.com>
Fri, 27 Jun 2014 13:53:48 +0000 (19:23 +0530)
committerDavid S. Miller <davem@davemloft.net>
Wed, 2 Jul 2014 01:56:10 +0000 (18:56 -0700)
commit0abfd1524b655f00597d419c8e63d06ebf637372
tree73926f15767feeea4bd036f12a6ce6da553c5193
parent35b1de5579704be0e03454f713dddd6f86eccb7e
cxgb4: Use FW interface to get BAR0 value

Use the firmware interface to get the BAR0 value since we really don't want
to use the PCI-E Configuration Space Backdoor access which is owned by the
firmware.

Set up PCI-E Memory Window registers using the true values programmed into
BAR registers.  When the PF4 "Master Function" is exported to a Virtual
Machine, the values returned by pci_resource_start() will be for the
synthetic PCI-E Configuration Space and not the real addresses. But we need
to program the PCI-E Memory Window address decoders with the real addresses
that we're going to be using in order to have accesses through the Memory
Windows work.

Based on origninal work by Casey Leedom <leedom@chelsio.com>

Signed-off-by: Casey Leedom <leedom@chelsio.com>
Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/chelsio/cxgb4/cxgb4.h
drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c
drivers/net/ethernet/chelsio/cxgb4/t4_hw.c
drivers/net/ethernet/chelsio/cxgb4/t4_regs.h