Messages in this thread | | | Date | Tue, 19 May 2009 07:44:08 +0900 | Subject | Re: [PATCH] asm-generic: add a dma-mapping.h file | From | FUJITA Tomonori <> |
| |
On Mon, 18 May 2009 16:45:24 +0200 Arnd Bergmann <arnd@arndb.de> wrote:
> On Monday 18 May 2009, FUJITA Tomonori wrote: > > > > NACK'ed, sorry. > > I had no idea how hard it would get to fix a simple > allyesconfig build error. This is the third time > that a new approach to getting ATA to build on all > platforms is gets a NAK... > > > - these idndef tricks are really ugly and wrong. > > - these functions are not generic at all. > > I was trying to do two things at once: > > - provide a default implementation for each function > that an architecture can override, therefore the > #ifdef magic.
I know what you tried with #ifdef but having something like '#define dma_map_sg' in arch's dma-mapping.h is unacceptable.
> - Have a minimal working implementation of the API > that at least makes sense for architectures that > do not support DMA, but want to share some of the > code.
Well, it might make sense but we don't call architectures that don't support DMA 'generic'.
> Ten of the existing architectures simply try do a > linear mapping, and that should easily be possible > in a generic way not too different from what I posted.
Your proposal doesn't work with arch/x86/kernel/pci-nommu.c, which is trying a linear mapping, what you are talking about.
> Would you agree to a patch that works with the same > code on e.g. arm, microblaze, mn10300 and sh and > uses only a few #ifdefs?
Having such helper for a linear mapping might be helpful but your approach is wrong.
| |