On Tue, Jun 26, 2012 at 08:48:18PM -0600, Stephen Warren wrote: > On 06/26/2012 08:32 PM, Mark Zhang wrote: > >> On 06/26/2012 07:46 PM, Mark Zhang wrote: > >>>>> On Tue, 26 Jun 2012 12:55:13 +0200 > >>>>> Thierry Reding <thierry.reding at avionic-design.de> wrote: > >> ... > >>>> I'm not sure I understand how information about the carveout would be > >>>> obtained from the IOMMU API, though. > >>> > >>> I think that can be similar with current gart implementation. Define > >>> carveout as: > >>> > >>> carveout { > >>> compatible = "nvidia,tegra20-carveout"; > >>> size = <0x10000000>; > >>> }; > >>> > >>> Then create a file such like "tegra-carveout.c" to get these definitions > >>> and > >> register itself as platform device's iommu instance. > >> > >> The carveout isn't a HW object, so it doesn't seem appropriate to define a > >> DT > >> node to represent it. > > > > Yes. But I think it's better to export the size of carveout as a > > configurable item. > > So we need to define this somewhere. How about define carveout as a > > property of gart? > > There already exists a way of preventing Linux from using certain chunks > of memory; the /memreserve/ syntax. From a brief look at the dtc source, > it looks like /memreserve/ entries can have labels, which implies that a > property in the GART node could refer to the /memreserve/ entry by > phandle in order to know what memory regions to use.
That doesn't work, unfortunately. The /memreserve/ label isn't even stored in the DTB. Even DTC throws an error when you try to reference the /memreserve/ by label. Thierry -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: not available URL: <http://lists.freedesktop.org/archives/dri-devel/attachments/20120627/5b3800f3/attachment.pgp>