i40e/base: fix hardware port number for pass-thru
i40e/base: fix hardware port number for pass-thru

Getting the pf_id from the function number was a good place to
start, but when the PF was setup in pass-thru mode, the PCI
bus/device/function was virtualized and the number in the VM is
different from the number in the bare metal. This caused HW
configuration issues when the wrong pf_id was used to set up the
HMC and other structures. The PF_FUNC_RID register has the real
bus/device/function information as configured by the BIOS, so use
that for a better number.

Test report: http://www.dpdk.org/ml/archives/dev/2015-May/017384.html

Signed-off-by: Helin Zhang <aba9dfdb1a6ec8bf1ff66b95272c029f8dfde1b1@intel.com>
Acked-by: Jingjing Wu <64d28b617c3b4840f5ded1bfa611cba7fadfe5c7@intel.com>
Acked-by: Jijiang Liu <10b95deab7df654d0c21c8c98b54c9a1ecf2a5c0@intel.com>
Tested-by: Min Cao <2a88aab028744885054f990971530d20553769a9@intel.com>

tsphillips/dpdk-fork,venkynv/dpdk-mirror,msune/dpdk,mixja/dpdk,msune/dpdk,tsphillips/dpdk-fork,mixja/dpdk,john-mcnamara-intel/dpdk,tsphillips/dpdk-fork,venkynv/dpdk-mirror,john-mcnamara-intel/dpdk,msune/dpdk,john-mcnamara-intel/dpdk,mixja/dpdk,john-mcnamara-intel/dpdk,mixja/dpdk,tsphillips/dpdk-fork,venkynv/dpdk-mirror,msune/dpdk,venkynv/dpdk-mirror