~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/mips/include/asm/sn/io.h

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  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) 2000, 2003 Ralf Baechle
  7  * Copyright (C) 2000 Silicon Graphics, Inc.
  8  */
  9 #ifndef _ASM_SN_IO_H
 10 #define _ASM_SN_IO_H
 11 
 12 #if defined(CONFIG_SGI_IP27)
 13 #include <asm/sn/sn0/hubio.h>
 14 #endif
 15 
 16 
 17 #define IIO_ITTE_BASE           0x400160 /* base of translation table entries */
 18 #define IIO_ITTE(bigwin)        (IIO_ITTE_BASE + 8*(bigwin))
 19 
 20 #define IIO_ITTE_OFFSET_BITS    5       /* size of offset field */
 21 #define IIO_ITTE_OFFSET_MASK    ((1<<IIO_ITTE_OFFSET_BITS)-1)
 22 #define IIO_ITTE_OFFSET_SHIFT   0
 23 
 24 #define IIO_ITTE_WIDGET_BITS    4       /* size of widget field */
 25 #define IIO_ITTE_WIDGET_MASK    ((1<<IIO_ITTE_WIDGET_BITS)-1)
 26 #define IIO_ITTE_WIDGET_SHIFT   8
 27 
 28 #define IIO_ITTE_IOSP           1       /* I/O Space bit */
 29 #define IIO_ITTE_IOSP_MASK      1
 30 #define IIO_ITTE_IOSP_SHIFT     12
 31 #define HUB_PIO_MAP_TO_MEM      0
 32 #define HUB_PIO_MAP_TO_IO       1
 33 
 34 #define IIO_ITTE_INVALID_WIDGET 3       /* an invalid widget  */
 35 
 36 #define IIO_ITTE_PUT(nasid, bigwin, io_or_mem, widget, addr) \
 37         REMOTE_HUB_S((nasid), IIO_ITTE(bigwin), \
 38                 (((((addr) >> BWIN_SIZE_BITS) & \
 39                    IIO_ITTE_OFFSET_MASK) << IIO_ITTE_OFFSET_SHIFT) | \
 40                 (io_or_mem << IIO_ITTE_IOSP_SHIFT) | \
 41                 (((widget) & IIO_ITTE_WIDGET_MASK) << IIO_ITTE_WIDGET_SHIFT)))
 42 
 43 #define IIO_ITTE_DISABLE(nasid, bigwin) \
 44         IIO_ITTE_PUT((nasid), HUB_PIO_MAP_TO_MEM, \
 45                      (bigwin), IIO_ITTE_INVALID_WIDGET, 0)
 46 
 47 #define IIO_ITTE_GET(nasid, bigwin) REMOTE_HUB_PTR((nasid), IIO_ITTE(bigwin))
 48 
 49 /*
 50  * Macro which takes the widget number, and returns the
 51  * IO PRB address of that widget.
 52  * value _x is expected to be a widget number in the range
 53  * 0, 8 - 0xF
 54  */
 55 #define IIO_IOPRB(_x)   (IIO_IOPRB_0 + ( ( (_x) < HUB_WIDGET_ID_MIN ? \
 56                         (_x) : \
 57                         (_x) - (HUB_WIDGET_ID_MIN-1)) << 3) )
 58 
 59 #endif /* _ASM_SN_IO_H */
 60 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php