OSDN Git Service

PCI: thunder-pem: Fix legacy firmware PEM-specific resources
authorTomasz Nowicki <tn@semihalf.com>
Fri, 31 Mar 2017 15:06:44 +0000 (17:06 +0200)
committerBjorn Helgaas <bhelgaas@google.com>
Mon, 3 Apr 2017 20:10:21 +0000 (15:10 -0500)
commitfeb199ebef488a9f2c3550fb10524f3dac9d8abe
tree550c2cf1c487f1ddfacdb634e1c1f04489ae21b2
parent9abb27c7594a62bbf6385e20b7f5a90b4eceae2f
PCI: thunder-pem: Fix legacy firmware PEM-specific resources

SZ_16M PEM resource size includes PEM-specific register and its children
resources. Reservation of the whole SZ_16M range leads to child device
driver failure when pcieport driver is requesting resources:

  pcieport 0004:1f:00.0: can't enable device: BAR 0 [mem 0x87e0c0f00000-0x87e0c0ffffff 64bit] not claimed

So we cannot reserve full 16M here and instead we want to reserve
PEM-specific register only which is SZ_64K.

At the end increase PEM resource to SZ_16M since this is what
thunder_pem_init() call expects for proper initialization.

Fixes: 9abb27c7594a ("PCI: thunder-pem: Add legacy firmware support for Cavium ThunderX host controller")
Signed-off-by: Tomasz Nowicki <tn@semihalf.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
CC: stable@vger.kernel.org # v4.10+
drivers/pci/host/pci-thunder-pem.c