On Thu, Nov 07, 2024 at 01:37:33PM +0100, Niklas Cassel wrote: > Commit cd81d3a0695c ("arm64: dts: rockchip: add rk3588 pcie and php > IOMMUs") added the rk3588 SoC's pcie IOMMU and php IOMMU as disabled. > > The mmu600_pcie is connected with the five PCIe controllers. > See 8.2 Block Diagram, in rk3588 TRM (Technical Reference Manual). > > The five PCIe controllers are: > pcie3x4, pcie3x2, pcie2x1l0, pcie2x1l1, pcie2x1l2. > > pcie3x4 can run in either Root Complex mode or Endpoint mode, the other > four PCIe controllers can only run in Root Complex mode. To describe this > we thus have six different device nodes in the device tree. > > A PCIe controller in Root Complex mode needs to specify an iommu-map, such > that the device knows how to convert a Requester ID (PCI BDF) to an IOMMU > master ID (stream ID). (A PCIe controller in Endpoint mode should use the > iommus property, just like a regular device.) > > If you look at the device tree bindings for msi-map and iommu-map, you can > see that the conversion from Requester ID to MSI-specifier data is the same > as the conversion from Requester ID to IOMMU specifier data. Thus it is > sensible to define the iommu-map property value similar to the msi-map, > such that the conversion will be identical. > > Add the proper iommu device tree properties for these six device nodes > connected to the mmu600_pcie, so that we can enable the mmu600_pcie IOMMU. > (The mmu600_php IOMMU is not touched, so it is still disabled.) > > Signed-off-by: Niklas Cassel <cassel@xxxxxxxxxx> > --- Hello Heiko, Any chance of getting this picked up? (If not now, then at least for 6.14.) Kind regards, Niklas