| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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 |  * | 
| Mark Maule | 5b53ed1 | 2005-08-03 14:06:00 -0700 | [diff] [blame] | 6 |  * Copyright (C) 2000-2005 Silicon Graphics, Inc. All rights reserved. | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 7 |  */ | 
 | 8 |  | 
 | 9 | #ifndef _ASM_IA64_SN_TIO_H | 
 | 10 | #define _ASM_IA64_SN_TIO_H | 
 | 11 |  | 
 | 12 | #define	TIO_MMR_ADDR_MOD | 
 | 13 |  | 
 | 14 | #define TIO_NODE_ID     TIO_MMR_ADDR_MOD(0x0000000090060e80) | 
 | 15 |  | 
 | 16 | #define TIO_ITTE_BASE   0xb0008800        /* base of translation table entries */ | 
 | 17 | #define TIO_ITTE(bigwin)        (TIO_ITTE_BASE + 8*(bigwin)) | 
 | 18 |  | 
 | 19 | #define TIO_ITTE_OFFSET_BITS    8       /* size of offset field */ | 
 | 20 | #define TIO_ITTE_OFFSET_MASK    ((1<<TIO_ITTE_OFFSET_BITS)-1) | 
 | 21 | #define TIO_ITTE_OFFSET_SHIFT   0 | 
 | 22 |  | 
 | 23 | #define TIO_ITTE_WIDGET_BITS    2       /* size of widget field */ | 
 | 24 | #define TIO_ITTE_WIDGET_MASK    ((1<<TIO_ITTE_WIDGET_BITS)-1) | 
 | 25 | #define TIO_ITTE_WIDGET_SHIFT   12 | 
 | 26 | #define TIO_ITTE_VALID_MASK	0x1 | 
 | 27 | #define TIO_ITTE_VALID_SHIFT	16 | 
 | 28 |  | 
| Mark Maule | 5b53ed1 | 2005-08-03 14:06:00 -0700 | [diff] [blame] | 29 | #define TIO_ITTE_WIDGET(itte) \ | 
 | 30 | 	(((itte) >> TIO_ITTE_WIDGET_SHIFT) & TIO_ITTE_WIDGET_MASK) | 
 | 31 | #define TIO_ITTE_VALID(itte) \ | 
 | 32 | 	(((itte) >> TIO_ITTE_VALID_SHIFT) & TIO_ITTE_VALID_MASK) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 33 |  | 
 | 34 | #define TIO_ITTE_PUT(nasid, bigwin, widget, addr, valid) \ | 
 | 35 |         REMOTE_HUB_S((nasid), TIO_ITTE(bigwin), \ | 
 | 36 |                 (((((addr) >> TIO_BWIN_SIZE_BITS) & \ | 
 | 37 |                    TIO_ITTE_OFFSET_MASK) << TIO_ITTE_OFFSET_SHIFT) | \ | 
 | 38 |                 (((widget) & TIO_ITTE_WIDGET_MASK) << TIO_ITTE_WIDGET_SHIFT)) | \ | 
 | 39 | 		(( (valid) & TIO_ITTE_VALID_MASK) << TIO_ITTE_VALID_SHIFT)) | 
 | 40 |  | 
 | 41 | #endif /*  _ASM_IA64_SN_TIO_H */ |