Re: [V7, 1/6] powerpc/powernv: don't enable SRIOV when VF BAR has non 64bit-prefetchable BAR
From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2016-02-17 12:41:27
From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2016-02-17 12:41:27
On Thu, 2015-22-10 at 01:22:14 UTC, Wei Yang wrote:
On PHB3, we enable SRIOV devices by mapping IOV BAR with M64 BARs. If a SRIOV device's IOV BAR is not 64bit-prefetchable, this is not assigned from 64bit prefetchable window, which means M64 BAR can't work on it. The reason is PCI bridges support only 2 memory windows and the kernel code programs bridges in the way that one window is 32bit-nonprefetchable and the other one is 64bit-prefetchable. So if devices' IOV BAR is 64bit and non-prefetchable, it will be mapped into 32bit space and therefore M64 cannot be used for it. This patch makes this explicit and truncate IOV resource in this case to save MMIO space. Signed-off-by: Wei Yang <redacted> Reviewed-by: Gavin Shan <redacted> Acked-by: Alexey Kardashevskiy <redacted>
Series applied to powerpc next, thanks. https://git.kernel.org/powerpc/c/b0331854190e70b9d96d392572 cheers