Re: PCI DMA to small buffers on cache-incoherent arch

Russell King (rmk@arm.linux.org.uk)
Mon, 10 Jun 2002 18:57:55 +0100


On Mon, Jun 10, 2002 at 07:22:26PM +0200, Oliver Neukum wrote:
> Definitely we should call it something different so we can limit it to
> architectures that need it.

DMA_ALIGN, DMA_ALIGN_BYTES or DMA_CACHE_BYTES.

Hmm, thinking about this some more (and just rambling). On some ARMs
(maybe other CPUs as well) each cache line has two dirty bits - one
for each half. If only half the cache line is dirty, it will only
write out the dirty half when evicting it. In this case, we'd want:

#define L1_CACHE_BYTES 32
#define DMA_CACHE_BYTES 16

which will probably work as long as we handle stuff carefully in the
architecture specific layer.

-- 
Russell King (rmk@arm.linux.org.uk)                The developer of ARM Linux
             http://www.arm.linux.org.uk/personal/aboutme.html

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/