diff options
author | Michael Walle <michael@walle.cc> | 2021-09-07 18:49:44 +0200 |
---|---|---|
committer | Lucas Stach <l.stach@pengutronix.de> | 2021-12-01 13:27:12 +0100 |
commit | 0ea057a9cb2be406b104b92ab4d8e246276e3fb8 (patch) | |
tree | 7604f1af0522fda98f1a2e0339a6d741baff7e26 /drivers/pci/controller/dwc/pcie-qcom-ep.c | |
parent | 3c7e0ccc946c01e33ee5fb5a7991f0f396348e5a (diff) |
drm/etnaviv: fix dma configuration of the virtual device
The DMA configuration of the virtual device is inherited from the first
actual etnaviv device. Unfortunately, this doesn't work with an IOMMU:
[ 5.191008] Failed to set up IOMMU for device (null); retaining platform DMA ops
This is because there is no associated iommu_group with the device. The
group is set in iommu_group_add_device() which is eventually called by
device_add() via the platform bus:
device_add()
blocking_notifier_call_chain()
iommu_bus_notifier()
iommu_probe_device()
__iommu_probe_device()
iommu_group_get_for_dev()
iommu_group_add_device()
Move of_dma_configure() into the probe function, which is called after
device_add(). Normally, the platform code will already call it itself
if .of_node is set. Unfortunately, this isn't the case here.
Signed-off-by: Michael Walle <michael@walle.cc>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Diffstat (limited to 'drivers/pci/controller/dwc/pcie-qcom-ep.c')
0 files changed, 0 insertions, 0 deletions