Hi, On Wed, Jun 23, 2021 at 10:29 AM Doug Anderson <dianders@xxxxxxxxxxxx> wrote: > > * Instead of putting the details in per-device nodes, maybe it makes > sense to accept that we should be specifying these things at the IOMMU > level? If specifying things at the device tree level then the > device-tree node of the IOMMU itself would just have a list of things > that should be strict/non-strict. ...this could potentially be merged > with a hardcoded list of things in the IOMMU driver based on the IOMMU > compatible string. > > Do those sound right? > > I still haven't totally grokked the ideal way to identify devices. I > guess on Qualcomm systems each device is in its own group and so could > have its own strictness levels? ...or would it be better to list by > "stream ID" or something like that? > > If we do something like this then maybe that's a solution that could > land short-ish term? We would know right at init time whether a given > domain should be strict or non-strict and there'd be no requirements > to transition it. OK, so I have attempted to implement this in the Qualcomm IOMMU driver in v2 of this series: https://lore.kernel.org/r/20210624171759.4125094-1-dianders@xxxxxxxxxxxx/ Hopefully that doesn't fragment the discussion too much, but it seemed like it might help move us forward to see what this would look like in code. I'll also note that I removed a few people from the CC list on v2 of the series because I'm no longer touching any code outside of the IOMMU subsystem and I thought folks would appreciate less noise in their inboxes. I've CCed a boatload of mailing lists though so it should be easy to find. If I dropped you from the CC list of v2 and you really want back on then I'm more than happy to re-add you. -Doug