PCI: thunder-pem: Add legacy firmware support for Cavium ThunderX host controller
authorTomasz Nowicki <tn@semihalf.com>
Thu, 23 Mar 2017 22:10:16 +0000 (17:10 -0500)
committerBjorn Helgaas <bhelgaas@google.com>
Thu, 23 Mar 2017 22:11:26 +0000 (17:11 -0500)
commit9abb27c7594a62bbf6385e20b7f5a90b4eceae2f
tree27c3048b54fa2f885bd1eef704c7ccbd6513ddd4
parent81caa91b72fd6a0b8dfc5eb10942c34f7efd2bc5
PCI: thunder-pem: Add legacy firmware support for Cavium ThunderX host controller

During early days of PCI quirks support, ThunderX firmware did not provide
PNP0c02 node with PCI configuration space and PEM-specific register ranges.
This means that for legacy FW we are not reserving these resources and
cannot gather PEM-specific resources for further PEM initialization.

To support already deployed legacy FW, calculate PEM-specific ranges and
provide resources reservation as fallback scenario into PEM driver when we
could not gather PEM reg base from ACPI tables.

Tested-by: Robert Richter <rrichter@cavium.com>
Signed-off-by: Tomasz Nowicki <tn@semihalf.com>
Signed-off-by: Vadim Lomovtsev <Vadim.Lomovtsev@caviumnetworks.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Robert Richter <rrichter@cavium.com>
CC: stable@vger.kernel.org # v4.10+
drivers/pci/host/pci-thunder-pem.c