pci: layerscape: add a way of specifying additional iommu mappings
authorLaurentiu Tudor <laurentiu.tudor@nxp.com>
Thu, 10 Sep 2020 09:42:19 +0000 (12:42 +0300)
committerPriyanka Jain <priyanka.jain@nxp.com>
Fri, 23 Oct 2020 11:22:09 +0000 (16:52 +0530)
commit2a5bbb13cc39102a68fcc31056925427ab44b591
tree92058ae49ee90cf24dd555bc0d059a452eca1cce
parent284d062ef1edda752eadd5aa8cb1df37c76dd272
pci: layerscape: add a way of specifying additional iommu mappings

In the current implementation, u-boot creates iommu mappings only
for PCI devices enumarated at boot time thus does not take into
account more dynamic scenarios such as SR-IOV or PCI hot-plug.
Add an u-boot env var and a device tree property (to be used for
example in more static scenarios such as hardwired PCI endpoints
that get initialized later in the system setup) that would allow
two things:
 - for a SRIOV capable PCI EP identified by its B.D.F specify
   the maximum number of VFs that will ever be created for it
 - for hot-plug case, specify the B.D.F with which the device
   will show up on the PCI bus
More details can be found in the included documentation:
  arch/arm/cpu/armv8/fsl-layerscape/doc/README.pci_iommu_extra

Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
arch/arm/cpu/armv8/fsl-layerscape/doc/README.pci_iommu_extra [new file with mode: 0644]
drivers/pci/Kconfig
drivers/pci/pcie_layerscape_fixup.c