Re: DMA APIs gumble grumble

From: Benjamin Herrenschmidt
Date: Wed Nov 08 2006 - 18:42:28 EST


On Wed, 2006-11-08 at 22:56 +0000, Russell King wrote:
> On Wed, Nov 08, 2006 at 07:47:33PM +1100, Benjamin Herrenschmidt wrote:
> > Yes, I need multiple dma_ops for powerpc too
>
> Ditto for ARM.

Ok, so there is some interest in having the dma_ops in struct device
beyond powerpc.

I'll put together today a patch doing:

- add #include <asm/device.h> to linux/device.h
- add a device.h file in asm/* that does:

struct dev_sysdata {
};

- add a struct dev_sysdata sysdata; field to struct device

That patch alone is 0 overhead and allows archs to start adding things.
I'll then modify my pending patches for 2.6.20 to use that instead of my
current device_ext thing.

Is that ok with everybody for 2.6.20 ?

Then, we can do, in no special order:

- on x86, put the acpi data in there and remove firmware_data from
struct device

- on x86, m32, frv, put the dma_coherent_mem pointer in there too and
remove it from struct device

- you can use it on ARM to put your dma_operations pointer as I'm
doing in for powerpc

- x86 can do the same

etc...

Cheers,
Ben.


-
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/