Correction: we use ARM SMMU-500. Corresponding bindings are : https://elixir.bootlin.com/linux/latest/source/Documentation/devicetree/bindings/iommu/arm,smmu.txt#L49
The #iommu-cells is 1 in our SOC: https://elixir.bootlin.com/linux/latest/source/arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi#L693 Regards, Pankaj Bansal > -----Original Message----- > From: Pankaj Bansal > Sent: Friday, 10 May, 2019 06:04 PM > To: Will Deacon <[email protected]>; Robin Murphy > <[email protected]>; Joerg Roedel <[email protected]> > Cc: [email protected]; [email protected]; > Varun Sethi <[email protected]>; Nipun Gupta <[email protected]> > Subject: [ARM SMMU] Dynamic StreamID allocation > > Hi Will/Robin/Joerg, > > I am s/w engineer from NXP India Pvt. Ltd. > We are using SMMU-V3 in one of NXP SOC. > I have a question about the SMMU Stream ID allocation in linux. > > Right now the Stream IDs allocated to a device are mapped via device tree to > the device. > https://elixir.bootlin.com/linux/latest/source/Documentation/devicetree/bindin > gs/iommu/arm,smmu-v3.txt#L39 > > As the device tree is passed from bootloader to linux, we detect all the > stream > IDs needed by a device in bootloader and add their IDs in respective device > nodes. > For each PCIE Endpoint (a unique BDF (Bus Device Function)) on PCIE bus, we > are > assigning a unique Stream ID in bootloader. > > However, this poses an issue with PCIE hot plug. > If we plug in a pcie device while linux is running, a unique BDF is assigned > to the > device, for which there is no stream ID in device tree. > > How can this problem be solved in linux? > > Is there a way to assign (and revoke) stream IDs at run time? > > Regards, > Pankaj Bansal _______________________________________________ iommu mailing list [email protected] https://lists.linuxfoundation.org/mailman/listinfo/iommu
