1
0
Fork 0

PCI: OF: Support "external-facing" property

Set the "untrusted" attribute to any PCIe port that has an
"external-facing" device tree property.  Any device downstream of this port
will inherit the attribute and have only the strictest IOMMU protection.

Signed-off-by: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
hifive-unleashed-5.2
Jean-Philippe Brucker 2019-04-11 13:40:27 +01:00 committed by Bjorn Helgaas
parent badd9f19f1
commit 9cb30a71ac
1 changed files with 10 additions and 4 deletions

View File

@ -31,10 +31,16 @@ void pci_release_of_node(struct pci_dev *dev)
void pci_set_bus_of_node(struct pci_bus *bus)
{
if (bus->self == NULL)
bus->dev.of_node = pcibios_get_phb_of_node(bus);
else
bus->dev.of_node = of_node_get(bus->self->dev.of_node);
struct device_node *node;
if (bus->self == NULL) {
node = pcibios_get_phb_of_node(bus);
} else {
node = of_node_get(bus->self->dev.of_node);
if (node && of_property_read_bool(node, "external-facing"))
bus->self->untrusted = true;
}
bus->dev.of_node = node;
}
void pci_release_bus_of_node(struct pci_bus *bus)