root/arch/mips/include/asm/xtalk/xtalk.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  * xtalk.h -- platform-independent crosstalk interface, derived from
   7  * IRIX <sys/PCI/bridge.h>, revision 1.38.
   8  *
   9  * Copyright (C) 1995 - 1997, 1999 Silcon Graphics, Inc.
  10  * Copyright (C) 1999 Ralf Baechle (ralf@gnu.org)
  11  */
  12 #ifndef _ASM_XTALK_XTALK_H
  13 #define _ASM_XTALK_XTALK_H
  14 
  15 #ifndef __ASSEMBLY__
  16 /*
  17  * User-level device driver visible types
  18  */
  19 typedef char            xwidgetnum_t;   /* xtalk widget number  (0..15) */
  20 
  21 #define XWIDGET_NONE            -1
  22 
  23 typedef int xwidget_part_num_t; /* xtalk widget part number */
  24 
  25 #define XWIDGET_PART_NUM_NONE   -1
  26 
  27 typedef int             xwidget_rev_num_t;      /* xtalk widget revision number */
  28 
  29 #define XWIDGET_REV_NUM_NONE    -1
  30 
  31 typedef int xwidget_mfg_num_t;  /* xtalk widget manufacturing ID */
  32 
  33 #define XWIDGET_MFG_NUM_NONE    -1
  34 
  35 typedef struct xtalk_piomap_s *xtalk_piomap_t;
  36 
  37 /* It is often convenient to fold the XIO target port
  38  * number into the XIO address.
  39  */
  40 #define XIO_NOWHERE     (0xFFFFFFFFFFFFFFFFull)
  41 #define XIO_ADDR_BITS   (0x0000FFFFFFFFFFFFull)
  42 #define XIO_PORT_BITS   (0xF000000000000000ull)
  43 #define XIO_PORT_SHIFT  (60)
  44 
  45 #define XIO_PACKED(x)   (((x)&XIO_PORT_BITS) != 0)
  46 #define XIO_ADDR(x)     ((x)&XIO_ADDR_BITS)
  47 #define XIO_PORT(x)     ((xwidgetnum_t)(((x)&XIO_PORT_BITS) >> XIO_PORT_SHIFT))
  48 #define XIO_PACK(p, o)  ((((uint64_t)(p))<<XIO_PORT_SHIFT) | ((o)&XIO_ADDR_BITS))
  49 
  50 #endif /* !__ASSEMBLY__ */
  51 
  52 #endif /* _ASM_XTALK_XTALK_H */

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