Hi Niklas, Am Montag, 18. November 2024, 12:52:23 CET schrieb Niklas Cassel: > 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.) Oh, definitly :-) ... it's marked as to look at. For 6.14 ... the patch arrived shortly before -rc7, with PCIe stuff in it. IOMMUs + PCIe is sort of a topic I'm cautious about shortly before the merge window ;-) Heiko