PCI DMA transfer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux