PERFORCE change 92589 for review
Kip Macy
kmacy at FreeBSD.org
Wed Mar 1 00:27:49 PST 2006
http://perforce.freebsd.org/chv.cgi?CH=92589
Change 92589 by kmacy at kmacy_storage:sun4v_work on 2006/03/01 08:26:46
add missing TTE flags
Affected files ...
.. //depot/projects/kmacy_sun4v/src/sys/sun4v/include/tte.h#5 edit
Differences ...
==== //depot/projects/kmacy_sun4v/src/sys/sun4v/include/tte.h#5 (text+ko) ====
@@ -110,9 +110,11 @@
#define VTD_X (1UL << 7)
#define VTD_W (1UL << 6)
-#define VTD_REF ((1UL << 3) << VTD_SOFT_SHIFT) /* XXX WRONG */
-#define VTD_SW ((1UL << 1) << VTD_SOFT_SHIFT) /* XXX WRONG */
-#define VTD_WIRED ((1UL << 0) << VTD_SOFT_SHIFT)
+#define VTD_REF (1UL << 5)
+#define VTD_WR_PERM (1UL << 4)
+#define VTD_MANAGED (1UL << 58)
+#define VTD_WIRED (1UL << 57)
+#define VTD_LOCK (1UL << 56)
@@ -126,7 +128,8 @@
/*
* default flags for kernel pages
*/
-#define TTE_KERNEL VTD_V | VTD_CP | VTD_CV | VTD_P | VTD_X | VTD_W
+#define TTE_KERNEL VTD_V | VTD_CP | VTD_CV | VTD_P | VTD_X | VTD_W | VTD_WR_PERM | VTD_REF | VTD_WIRED
+#define TTE_KERNEL_MINFLAGS VTD_V | VTD_CP | VTD_CV | VTD_P
#define VTD_SIZE_BITS (4)
#define VTD_SIZE_MASK ((1 << VTD_SIZE_BITS) - 1)
@@ -140,12 +143,13 @@
#define TTE_GET_PAGE_SHIFT(tte_data) \
TTE_PAGE_SHIFT(TTE_GET_SIZE(tte_data))
-
+#ifdef notyet
typedef union {
struct tte {
unsigned int v:1; /* <63> valid */
unsigned int nfo:1; /* <62> non-fault only */
- unsigned int sw:4; /* <61:58> sw */
+ unsigned int sw:3; /* <61:59> sw */
+ unsigned int managed:1; /* <58> managed */
unsigned int wired:1; /* <57> wired */
unsigned int lock:1; /* <56> sw - locked */
unsigned long pa:43; /* <55:13> pa */
@@ -163,6 +167,7 @@
} tte_bit;
uint64_t ll;
} tte_t;
+#endif
#define tte_val tte_bit.v /* use < 0 check in asm */
#define tte_size tte_bit.sz
More information about the p4-projects
mailing list