root/arch/mips/include/asm/dma-coherence.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


DEFINITIONS

This source file includes following definitions.
  1. dev_is_dma_coherent

   1 /*
   2  * This file is subject to the terms and conditions of the GNU General Public
   3  * License.  See the file "COPYING" in the main directory of this archive
   4  * for more details.
   5  *
   6  * Copyright (C) 2006  Ralf Baechle <ralf@linux-mips.org>
   7  *
   8  */
   9 #ifndef __ASM_DMA_COHERENCE_H
  10 #define __ASM_DMA_COHERENCE_H
  11 
  12 enum coherent_io_user_state {
  13         IO_COHERENCE_DEFAULT,
  14         IO_COHERENCE_ENABLED,
  15         IO_COHERENCE_DISABLED,
  16 };
  17 
  18 #if defined(CONFIG_DMA_PERDEV_COHERENT)
  19 /* Don't provide (hw_)coherentio to avoid misuse */
  20 #elif defined(CONFIG_DMA_MAYBE_COHERENT)
  21 extern enum coherent_io_user_state coherentio;
  22 extern int hw_coherentio;
  23 
  24 static inline bool dev_is_dma_coherent(struct device *dev)
  25 {
  26         return coherentio == IO_COHERENCE_ENABLED ||
  27                 (coherentio == IO_COHERENCE_DEFAULT && hw_coherentio);
  28 }
  29 #else
  30 #ifdef CONFIG_DMA_NONCOHERENT
  31 #define coherentio      IO_COHERENCE_DISABLED
  32 #else
  33 #define coherentio      IO_COHERENCE_ENABLED
  34 #endif
  35 #define hw_coherentio   0
  36 #endif /* CONFIG_DMA_MAYBE_COHERENT */
  37 
  38 #endif

/* [<][>][^][v][top][bottom][index][help] */