Re: [PATCH] asm-generic: add dma-mapping-linear.h

FUJITA Tomonori
2009-06-08T08:23:09Z

On Mon, 8 Jun 2009 10:03:58 +0200
Arnd Bergmann <arnd@arndb.de> wrote:

> On Monday 08 June 2009, FUJITA Tomonori wrote:
> >
> > > However, I don't think I have the energy to fix this problem, but
> > > I agree that it should be fixed eventually. I can leave out
> > > the declarations of dma_{free,alloc}_coherent from dma-mapping-linear.h
> > > so that the broken code remains in the architecture specific
> > > files, and change all references to dma_cache_sync to something
> > > else. The best I can think of is __dma_cache_sync() with the same
> > > calling conventions as dma_cache_sync(). Does that make sense?
> >
> > Sorry, but it doesn't make sense to me because __dma_cache_sync() hack
> > is against the goal of dma-mapping-linear.h, having a clean, ideal,
> > unified header file.
>
> Do you have any other suggestion? The operation that an architecture
> performs to synchronize the DMA buffer after a DMA is just not generic
> and needs to have some name that we can call from the generic file.
> Right now we use one of dma_cache_sync, frv_cache_wback_inv,
> mn10300_dcache_flush_inv or consistent_sync for this and I was just
> looking for a new internal name for this operation.

If you don't clean up them, I think that it's better to leave out
asm-generic/dma-generic-linear.h for
now. asm-generic/dma-generic-linear.h is supposed to clean up the
mess; unify (generalize, or fix) some architecture. It's not supported
to add another temporary hack that should be removed.