22 Jul, 2008

1 commit

  • Introduce a new dma attriblue DMA_ATTR_WEAK_ORDERING to use weak ordering
    on DMA mappings in the Cell processor. Add the code to the Cell's IOMMU
    implementation to use this code.

    Dynamic mappings can be weakly or strongly ordered on an individual basis
    but the fixed mapping has to be either completely strong or completely weak.
    This is currently decided by a kernel boot option (pass iommu_fixed=weak
    for a weakly ordered fixed linear mapping, strongly ordered is the default).

    Signed-off-by: Mark Nelson
    Signed-off-by: Arnd Bergmann
    Signed-off-by: Benjamin Herrenschmidt

    Mark Nelson
     

29 Apr, 2008

1 commit

  • Introduce new interfaces, dma_*map*_attrs(), for passing architecture-specific
    attributes when memory is mapped and unmapped for DMA. Give the interfaces
    default implementations which ignore attributes. Also introduce the
    dma_{set|get}_attr() interfaces for setting and retrieving individual
    attributes. Define one attribute, DMA_ATTR_WRITE_BARRIER, in anticipation of
    its use by ia64/sn. Select whether architectures implement arch-specific
    versions of the dma_*map*_attrs() interfaces via HAVE_DMA_ATTRS in Kconfig.

    [markn@au1.ibm.com: dma_{set,get}_attr() have to be static inline]
    Signed-off-by: Arthur Kepner
    Cc: Tony Luck
    Cc: Jesse Barnes
    Cc: Jes Sorensen
    Cc: Randy Dunlap
    Cc: Roland Dreier
    Cc: James Bottomley
    Cc: David Miller
    Cc: Benjamin Herrenschmidt
    Cc: Grant Grundler
    Cc: Michael Ellerman
    Signed-off-by: Mark Nelson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arthur Kepner