root/arch/mips/include/asm/mach-generic/mangle-port.h

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

INCLUDED FROM


   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) 2003, 2004 Ralf Baechle
   7  */
   8 #ifndef __ASM_MACH_GENERIC_MANGLE_PORT_H
   9 #define __ASM_MACH_GENERIC_MANGLE_PORT_H
  10 
  11 #define __swizzle_addr_b(port)  (port)
  12 #define __swizzle_addr_w(port)  (port)
  13 #define __swizzle_addr_l(port)  (port)
  14 #define __swizzle_addr_q(port)  (port)
  15 
  16 /*
  17  * Sane hardware offers swapping of PCI/ISA I/O space accesses in hardware;
  18  * less sane hardware forces software to fiddle with this...
  19  *
  20  * Regardless, if the host bus endianness mismatches that of PCI/ISA, then
  21  * you can't have the numerical value of data and byte addresses within
  22  * multibyte quantities both preserved at the same time.  Hence two
  23  * variations of functions: non-prefixed ones that preserve the value
  24  * and prefixed ones that preserve byte addresses.  The latters are
  25  * typically used for moving raw data between a peripheral and memory (cf.
  26  * string I/O functions), hence the "__mem_" prefix.
  27  */
  28 #if defined(CONFIG_SWAP_IO_SPACE)
  29 
  30 # define ioswabb(a, x)          (x)
  31 # define __mem_ioswabb(a, x)    (x)
  32 # define ioswabw(a, x)          le16_to_cpu(x)
  33 # define __mem_ioswabw(a, x)    (x)
  34 # define ioswabl(a, x)          le32_to_cpu(x)
  35 # define __mem_ioswabl(a, x)    (x)
  36 # define ioswabq(a, x)          le64_to_cpu(x)
  37 # define __mem_ioswabq(a, x)    (x)
  38 
  39 #else
  40 
  41 # define ioswabb(a, x)          (x)
  42 # define __mem_ioswabb(a, x)    (x)
  43 # define ioswabw(a, x)          (x)
  44 # define __mem_ioswabw(a, x)    cpu_to_le16(x)
  45 # define ioswabl(a, x)          (x)
  46 # define __mem_ioswabl(a, x)    cpu_to_le32(x)
  47 # define ioswabq(a, x)          (x)
  48 # define __mem_ioswabq(a, x)    cpu_to_le32(x)
  49 
  50 #endif
  51 
  52 #endif /* __ASM_MACH_GENERIC_MANGLE_PORT_H */

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