On Thu, Oct 31, 2013 at 07:13:01PM +0000, Stephen Warren wrote: > On 10/31/2013 12:02 PM, Will Deacon wrote: > > On Thu, Oct 31, 2013 at 05:40:29PM +0000, Mark Rutland wrote: > >> For the ARM SMMU binding, each device has a #stream-id-cells property > >> describing how many IDs it has, and then the SMMU node has a phandle+args > >> linkage to each of the devices attached to it, describing their stream IDs. > >> While this does have some limitations (a device can't be plugged into multiple > >> SMMUs with a different number of IDs), it seems generally sane. > > > > If a device masters through two separate SMMUs, I think you need to describe > > it as two devices. Even if you could describe the thing in DT, the Linux > > driver/iommu model will quickly fall over. > > Isn't that an internal Linux driver model issue? If there's a single > logical HW block, it seems like it should have a single DT node. The > fact that the DT node then somehow needs to instantiate two struct > device objects within Linux seems like it shouldn't influence the DT design. Sure, I was just pointing out that you're going to need two struct devices for that scenario, which isn't how things would work in Linux today. Will -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html