On 2019-04-02 2:15 pm, Jean-Philippe Brucker wrote:
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@xxxxxxx>
---
drivers/pci/of.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/pci/of.c b/drivers/pci/of.c
index 3d32da15c215..3e7ac7748d90 100644
--- a/drivers/pci/of.c
+++ b/drivers/pci/of.c
@@ -35,6 +35,9 @@ void pci_set_bus_of_node(struct pci_bus *bus)
bus->dev.of_node = pcibios_get_phb_of_node(bus);
else
bus->dev.of_node = of_node_get(bus->self->dev.of_node);
+
+ if (of_get_property(bus->dev.of_node, "external-facing", NULL))
You could use of_property_read_bool() for this, but either way,
Reviewed-by: Robin Murphy <robin.murphy@xxxxxxx>
+ bus->self->untrusted = true;
}
void pci_release_bus_of_node(struct pci_bus *bus)