From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arnd Bergmann Subject: Re: [PATCH v2] devicetree: Add generic IOMMU device tree bindings Date: Wed, 04 Jun 2014 15:53:27 +0200 Message-ID: <5349895.mRr9cbXPnm@wuerfel> References: <1400877218-4113-1-git-send-email-thierry.reding@gmail.com> <4462924.8iRbdkOPp7@wuerfel> <20140604134400.GE28484@ulmo> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20140604134400.GE28484@ulmo> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: iommu-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org Errors-To: iommu-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org To: Thierry Reding Cc: Mark Rutland , "devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , "linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , Pawel Moll , Ian Campbell , Grant Grundler , Stephen Warren , Will Deacon , "linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , Marc Zyngier , Linux IOMMU , Rob Herring , Rob Herring , Kumar Gala , "linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , Cho KyongHo , Dave Martin , "linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org" List-Id: devicetree@vger.kernel.org On Wednesday 04 June 2014 15:44:03 Thierry Reding wrote: > > Well, the iommu specific binding could allow a variable #address-cells. > > That way, you just need to know the number of stream IDs for that instance > > of the iommu. > > That sounds fairly complicated to me. I don't see what that buys us over > the clarity and simplicity that the above explicit notation gives us. Is > it not more common for a device to have a single master rather than a > whole bunch of them? If I understood the problem right, the case that people want to handle is not actually multiple masters but instead multiple IOMMU contexts, which you can have in a GPU to handle multiple processes drawing on different parts of the screen, or in a NIC with virtual functions assigned to KVM guests or user processes. I don't know what the number of contexts per device would be here, but I assume it may be large enough to become a nuisance to list them individually. Then again, I also don't know how IOMMUs would show those. In the cases I've seen before, you actually have an ID for the master that is separate from the context ID, but apparently SMMU isn't that smart. Arnd