linux-mips
[Top] [All Lists]

PCI DMA transfer

To: linux-mips@oss.sgi.com
Subject: PCI DMA transfer
From: Carsten Langgaard <carstenl@mips.com>
Date: Mon, 17 Jun 2002 12:57:10 +0200
Sender: owner-linux-mips@oss.sgi.com
I can see the 'dma_cache_inv_pc' routines (in the arch/mips/mm cache
files), in almost every incarnation, is actually doing a write-back
invalidation, why ?
My first thought was, that this will never work for the PCI devices
doing DMA, so I was wondering why it actually does work.
And the answer is, that this routine isn't used by the
PCI DMA functions, no matter what the DIRECTION of the DMA transfer is.
Has anyone got an idea why the while PCI DMA stuff is implemented this
way (only using write-back invalidations) ?
I would expect that we did a write-back invalidation of the D-cache,
when the direction was PCI_DMA_TODEVICE and only did invalidation of the
D-cache, when the direction was PCI_DMA_FROMDEVICE.

/Carsten


--
_    _ ____  ___   Carsten Langgaard   Mailto:carstenl@mips.com
|\  /|||___)(___   MIPS Denmark        Direct: +45 4486 5527
| \/ |||    ____)  Lautrupvang 4B      Switch: +45 4486 5555
  TECHNOLOGIES     2750 Ballerup       Fax...: +45 4486 5556
                   Denmark             http://www.mips.com




<Prev in Thread] Current Thread [Next in Thread>