summaryrefslogtreecommitdiff
path: root/drivers/core
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2021-10-31 12:21:12 -0400
committerTom Rini <[email protected]>2021-10-31 12:21:12 -0400
commit50bff6a6f86669a8652e2bf271eeb04f77911274 (patch)
tree2ab5f207ca3c191e5c1e67f66459d3b4a6f3fb0a /drivers/core
parenta09929cc6c5a108f89e91660f37d745ed119385b (diff)
parent3e2095e960b47a3c0211a3a1e52c74b1761cb0be (diff)
Merge branch '2021-10-31-assorted-platform-updates'
- Revert GIC LPI changes that need to be reworked. - mvebu SATA booting bugfix - Samsung Galaxy S9/S9+(SM-G96x0), Samsung Galaxy A and Apple M1 platform support.
Diffstat (limited to 'drivers/core')
-rw-r--r--drivers/core/device.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/core/device.c b/drivers/core/device.c
index d7a778a2413..efd07176e37 100644
--- a/drivers/core/device.c
+++ b/drivers/core/device.c
@@ -28,6 +28,7 @@
#include <dm/uclass.h>
#include <dm/uclass-internal.h>
#include <dm/util.h>
+#include <iommu.h>
#include <linux/err.h>
#include <linux/list.h>
#include <power-domain.h>
@@ -543,6 +544,13 @@ int device_probe(struct udevice *dev)
goto fail;
}
+ if (CONFIG_IS_ENABLED(IOMMU) && dev->parent &&
+ (device_get_uclass_id(dev) != UCLASS_IOMMU)) {
+ ret = dev_iommu_enable(dev);
+ if (ret)
+ goto fail;
+ }
+
ret = device_get_dma_constraints(dev);
if (ret)
goto fail;