On Monday 15 September 2014, Varun Sethi wrote: > > > > This seems rather specific to MMU-500. I don't think that most IOMMUs would > > use the term 'master ID', 'stream ID' or even the general concept, and you > > don't expand the acronym 'TBU'. I've seen many IOMMUs and I don't even > > know what that means. > > TBU refers to the translation buffer unit, which is responsible for caching > page translations. In case of translation miss in the cache, translation > request is forwarded to the TCU (Translation control unit). The master id > forwarded to TCU would also contain the TBU ID. Using the master-id-bits > property we can mask out the additional TBU bits at the TCU. This is a cause > of concern when we want to share master id for devices which are connected to > different TBUs. We have a hot pluggable bus architecture, where a device > group can have multiple devices connected to different TBUs. So, we need a > mechanism to mask out additional TBIU bits.
Ok, I think I understand now > > Why do you think this is something that is needed to be known at the global > > level, rather than a property for some individual drivers? > > > In case of Freescale Layerscape SOCs, number of bits used for defining a > stream id are specific to a given platform. > > Are you suggesting that this property should be added to the master device > node, rather than the iommu node? Most importantly, I think this needs to be part of the (iommu) device specific binding, not the generic binding that is used for all iommus that may or may not have this concept. I believe in case of the ARM SMMU, it should actually go into the master node as part of the 'iommus' property, because the mask can be different for each master. If your IOMMU has a fixed mask that is used for all devices, that's fine and you can put it into the iommu node itself but document it in the binding for your IOMMU. For hot-pluggable buses, you probably need to have the 'iommus' property in the node that corresponds to the bus controller, and that will have a mask that is used for all devices plugged into it. Arnd _______________________________________________ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu