Re: [RFC] ARM DMA mapping TODO, v1

From: Russell King - ARM Linux
Date: Thu Apr 28 2011 - 05:31:01 EST


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.

Your solution doesn't allow that - and I believe that's what Arnd is
talking about.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/