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 */ |