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

Arnd Bergmann
2009-06-01T16:46:14Z

On Monday 01 June 2009, Michal Simek wrote:

> Microblaze have it but it is not cleared(checked) and not in mainline -
> I want to look at it when mmu is in mainline.
> As I wrote before you can use Microblaze as tested arch.

Ok. It should become really easy once the asm-generic version is there.
Do you know if all DMA capable devices on microblaze are coherent
(or if all of them are noncoherent)?

If it is indeed coherent, the below code should be enough, otherwise
you need to add some cache flushes in the functions below.

Arnd <><

---
#ifndef _ASM_MICROBLAZE_DMA_MAPPING_H
#define _ASM_MICROBLAZE_DMA_MAPPING_H

static inline int
__dma_coherent_dev(struct device *dev)
{
return 1;
}

static inline void
dma_cache_sync(struct device *dev, void *cpu_addr, size_t size,
enum dma_data_direction direction)
{
}

static inline int dma_get_cache_alignment(void)
{
return 1 << L1_CACHE_SHIFT;
}

#include <asm-generic/dma-mapping-linear.h>

#endif _ASM_MICROBLAZE_DMA_MAPPING_H