[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1304024836.2513.198.camel@pasglop>
Date: Fri, 29 Apr 2011 07:07:16 +1000
From: Benjamin Herrenschmidt <benh@...nel.crashing.org>
To: Russell King - ARM Linux <linux@....linux.org.uk>
Cc: linaro-mm-sig@...ts.linaro.org,
linux-arm-kernel@...ts.infradead.org,
Arnd Bergmann <arnd@...db.de>, linux-kernel@...r.kernel.org
Subject: Re: [RFC] ARM DMA mapping TODO, v1
On Thu, 2011-04-28 at 10:30 +0100, Russell King - ARM Linux wrote:
> On Thu, Apr 28, 2011 at 07:41:07AM +1000, Benjamin Herrenschmidt wrote:
> >
> > > As I said above, I don't think bus code can do it. Take my example
> > > above of a tulip pci device on x86 and a tulip pci device on ARM. Both
> > > use the same PCI code.
> > >
> > > Maybe something in asm/pci.h - but that invites having lots of bus
> > > specific header files in asm/.
> > >
> > > A better solution imho would be to have an architecture callback for
> > > struct device which gets registered, which can inspect the type of
> > > the device, and set the flag depending on where it appears in the
> > > tree.
> >
> > Now -that's gross :-)
> >
> > For PCI you can have the flag propagate from the PHB down, for busses
> > without a bus type (platform) then whoever instanciate them (the
> > platform code) can set that appropriately.
>
> How can you do that when it changes mid-bus heirarchy? I'm thinking
> of the situation where the DRM stuff is on a child bus below the
> root bus, and the root bus has DMA coherent devices on it but the DRM
> stuff doesn't.
But that's not PCI right ? IE. with PCI, coherency is a property of the
PHB...
> Your solution doesn't allow that - and I believe that's what Arnd is
> talking about.
Well, for the rest I'm thinking just bolt it into the platform until you
can put the property in the DT :-)
Cheers,
Ben.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists