WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [linux-2.6.18-xen] [IA64] Sync public headers

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [linux-2.6.18-xen] [IA64] Sync public headers
From: "Xen patchbot-linux-2.6.18-xen" <patchbot-linux-2.6.18-xen@xxxxxxxxxxxxxxxxxxx>
Date: Thu, 22 Nov 2007 12:01:05 -0800
Delivery-date: Thu, 22 Nov 2007 12:17:05 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Alex Williamson <alex.williamson@xxxxxx>
# Date 1195576433 25200
# Node ID 4576e10034d64e56ffae79f36687731f6fc7d960
# Parent  ca05cf1a9bdc2c7604b95fd085fa5abe067c969a
[IA64] Sync public headers

Signed-off-by: Alex Williamson <alex.williamson@xxxxxx>
---
 include/xen/interface/arch-ia64.h          |    4 -
 include/xen/interface/arch-ia64/hvm/save.h |   90 +++++++++++++++--------------
 2 files changed, 51 insertions(+), 43 deletions(-)

diff -r ca05cf1a9bdc -r 4576e10034d6 include/xen/interface/arch-ia64.h
--- a/include/xen/interface/arch-ia64.h Fri Nov 16 16:55:46 2007 +0000
+++ b/include/xen/interface/arch-ia64.h Tue Nov 20 09:33:53 2007 -0700
@@ -674,7 +674,9 @@ DEFINE_XEN_GUEST_HANDLE(xen_ia64_debug_o
  * This is useful in guests using region 7 for identity mapping
  * like the linux kernel does.
  */
-#define XEN_IA64_OPTF_IDENT_MAP_REG7   0x1UL
+#define XEN_IA64_OPTF_IDENT_MAP_REG7_BIT       0
+#define XEN_IA64_OPTF_IDENT_MAP_REG7           \
+       (1UL << XEN_IA64_OPTF_IDENT_MAP_REG7_BIT)
 
 struct xen_ia64_opt_feature {
        unsigned long cmd;              /* Which feature */
diff -r ca05cf1a9bdc -r 4576e10034d6 include/xen/interface/arch-ia64/hvm/save.h
--- a/include/xen/interface/arch-ia64/hvm/save.h        Fri Nov 16 16:55:46 
2007 +0000
+++ b/include/xen/interface/arch-ia64/hvm/save.h        Tue Nov 20 09:33:53 
2007 -0700
@@ -74,13 +74,15 @@ struct hvm_hw_ia64_vlsapic {
     uint8_t pad[2];
 };
 DECLARE_HVM_SAVE_TYPE(VLSAPIC, 4, struct hvm_hw_ia64_vlsapic);
-// unconditionaly set v->arch.irq_new_peding = 1 
-// unconditionaly set v->arch.irq_new_condition = 0
+/* set
+ * unconditionaly set v->arch.irq_new_peding = 1 
+ * unconditionaly set v->arch.irq_new_condition = 0
+ */
 
 /*
  * vtime
  */
-// itc, itm, itv are saved by arch vcpu context
+/* itc, itm, itv are saved by arch vcpu context */
 struct hvm_hw_ia64_vtime {
     uint64_t itc;
     uint64_t itm;
@@ -89,13 +91,15 @@ struct hvm_hw_ia64_vtime {
     uint64_t pending;
 };
 DECLARE_HVM_SAVE_TYPE(VTIME, 5, struct hvm_hw_ia64_vtime);
-// calculate v->vtm.vtm_offset
-// ??? Or should vtm_offset be set by leave_hypervisor_tail()?
-// start vtm_timer if necessary by vtm_set_itm().
-// ??? Or should vtm_timer be set by leave_hypervisor_tail()?
-//
-// ??? or should be done by schedule_tail()
-//        => schedule_tail() should do.
+/*
+ * calculate v->vtm.vtm_offset
+ * ??? Or should vtm_offset be set by leave_hypervisor_tail()?
+ * start vtm_timer if necessary by vtm_set_itm().
+ * ??? Or should vtm_timer be set by leave_hypervisor_tail()?
+ *
+ * ??? or should be done by schedule_tail()
+ *        => schedule_tail() should do.
+ */
 
 /*
  * viosapic
@@ -138,49 +142,51 @@ DECLARE_HVM_SAVE_TYPE(VIOSAPIC, 6, struc
  * vacpi
  * PM timer
  */
-#if 0
-struct hvm_hw_ia64_pmtimer {
+struct vacpi_regs {
+    union {
+        struct {
+            uint32_t pm1a_sts:16;/* PM1a_EVT_BLK.PM1a_STS: status register */
+            uint32_t pm1a_en:16; /* PM1a_EVT_BLK.PM1a_EN: enable register */
+        };
+        uint32_t evt_blk;
+    };
     uint32_t tmr_val;   /* PM_TMR_BLK.TMR_VAL: 32bit free-running counter */
-    uint16_t pm1a_sts;  /* PM1a_EVT_BLK.PM1a_STS: status register */
-    uint16_t pm1a_en;   /* PM1a_EVT_BLK.PM1a_EN: enable register */
-};
-DECLARE_HVM_SAVE_TYPE(PMTIMER, 7, struct hvm_hw_ia64_pmtimer);
-#else
-struct vacpi_regs {
-       union {
-               struct {
-                       uint32_t pm1a_sts:16;
-                       uint32_t pm1a_en:16;
-               };
-               uint32_t evt_blk;
-       };
-       uint32_t tmr_val;
 };
 
 struct hvm_hw_ia64_vacpi {
     struct vacpi_regs   regs;
 };
 DECLARE_HVM_SAVE_TYPE(VACPI, 7, struct hvm_hw_ia64_vacpi);
-// update last_gtime and setup timer of struct vacpi
-#endif
-
-#if 0
-/*
- * guest os type
- * XXX Xen guest os specific optimization
- *     This isn't hvm specific so this should be addressed genericly
- *     including paravirtualized domain.
- */
-struct hvm_hw_ia64_gos {
-    uint64_t   gos_type;
-};
-DECLARE_HVM_SAVE_TYPE(GOS_TYPE, 8, struct hvm_hw_ia64_gos);
-#endif
+/* update last_gtime and setup timer of struct vacpi */
+
+/*
+ * opt_feature: identity mapping of region 4, 5 and 7.
+ * With the c/s 16396:d2935f9c217f of xen-ia64-devel.hg,
+ * opt_feature hypercall supports only region 4,5,7 identity mappings.
+ * structure hvm_hw_ia64_identity_mappings only supports them.
+ * The new structure, struct hvm_hw_ia64_identity_mappings, is created to
+ * avoid to keep up with change of the xen/ia64 internal structure, struct
+ * opt_feature.
+ *
+ * If it is enhanced in the future, new structure will be created.
+ */
+struct hvm_hw_ia64_identity_mapping {
+    uint64_t on;        /* on/off */
+    uint64_t pgprot;    /* The page protection bit mask of the pte. */
+    uint64_t key;       /* A protection key. */
+};
+
+struct hvm_hw_ia64_identity_mappings {
+    struct hvm_hw_ia64_identity_mapping im_reg4;/* Region 4 identity mapping */
+    struct hvm_hw_ia64_identity_mapping im_reg5;/* Region 5 identity mapping */
+    struct hvm_hw_ia64_identity_mapping im_reg7;/* Region 7 identity mapping */
+};
+DECLARE_HVM_SAVE_TYPE(OPT_FEATURE_IDENTITY_MAPPINGS, 8, struct 
hvm_hw_ia64_identity_mappings);
 
 /* 
  * Largest type-code in use
  */
-#define HVM_SAVE_CODE_MAX       7
+#define HVM_SAVE_CODE_MAX       8
 
 #endif /* __XEN_PUBLIC_HVM_SAVE_IA64_H__ */
 

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>