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] Backout incautious public/io header changes

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] Backout incautious public/io header changes
From: Xen patchbot -unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Sat, 29 Oct 2005 09:58:12 +0000
Delivery-date: Sat, 29 Oct 2005 09:56:25 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
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 djm@xxxxxxxxxxxxxxx
# Node ID ff7c5a791ed58fbd9f5fd2db12b5a1b58fd11c4c
# Parent  42cab872427382e7e708c4a151d8da698a519a4f
Backout incautious public/io header changes

diff -r 42cab8724273 -r ff7c5a791ed5 xen/Rules.mk
--- a/xen/Rules.mk      Sat Oct 15 03:09:43 2005
+++ b/xen/Rules.mk      Fri Oct 21 19:58:39 2005
@@ -47,7 +47,6 @@
 
 include $(BASEDIR)/arch/$(TARGET_ARCH)/Rules.mk
 
-CFLAGS += -D__HYPERVISOR__
 ifneq ($(debug),y)
 CFLAGS += -DNDEBUG
 ifeq ($(verbose),y)
diff -r 42cab8724273 -r ff7c5a791ed5 xen/arch/ia64/Rules.mk
--- a/xen/arch/ia64/Rules.mk    Sat Oct 15 03:09:43 2005
+++ b/xen/arch/ia64/Rules.mk    Fri Oct 21 19:58:39 2005
@@ -24,7 +24,7 @@
           -I$(BASEDIR)/include/asm-ia64/linux-null                     \
            -I$(BASEDIR)/arch/ia64/linux -I$(BASEDIR)/arch/ia64/linux-xen
 CFLAGS  += -Wno-pointer-arith -Wredundant-decls
-CFLAGS  += -DIA64 -DXEN -DLINUX_2_6 -DV_IOSAPIC_READY
+CFLAGS  += -DIA64 -DXEN -DLINUX_2_6
 CFLAGS += -ffixed-r13 -mfixed-range=f12-f15,f32-f127
 CFLAGS += -w -g
 ifeq ($(VALIDATE_VT),y)
diff -r 42cab8724273 -r ff7c5a791ed5 xen/include/public/io/ioreq.h
--- a/xen/include/public/io/ioreq.h     Sat Oct 15 03:09:43 2005
+++ b/xen/include/public/io/ioreq.h     Fri Oct 21 19:58:39 2005
@@ -29,18 +29,11 @@
 #define STATE_IORESP_READY      3
 #define STATE_IORESP_HOOK       4
 
-#define IOREQ_TYPE_PIO         0       /* pio */
-#define IOREQ_TYPE_COPY                1       /* mmio ops */
-#define IOREQ_TYPE_AND         2
-#define IOREQ_TYPE_OR          3
-#define IOREQ_TYPE_XOR         4
-
-#ifdef __HYPERVISOR__
-#include <public/io/vmx_vlapic.h>
-#else
-#include <xen/io/vmx_vlapic.h>
-#endif
-
+#define IOREQ_TYPE_PIO  0 /* pio */
+#define IOREQ_TYPE_COPY  1 /* mmio ops */
+#define IOREQ_TYPE_AND  2
+#define IOREQ_TYPE_OR  3
+#define IOREQ_TYPE_XOR  4
 
 /*
  * VMExit dispatcher should cooperate with instruction decoder to
@@ -48,35 +41,48 @@
  * virq 
  */
 typedef struct {
-    u64     addr;               /*  physical address            */
-    u64     size;               /*  size in bytes               */
-    u64     count;             /*  for rep prefixes            */
+    uint64_t addr;   /*  physical address            */
+    uint64_t size;   /*  size in bytes               */
+    uint64_t count;  /*  for rep prefixes            */
     union {
-        u64     data;           /*  data                        */
-        void    *pdata;         /*  pointer to data             */
+        uint64_t data;           /*  data                        */
+        void    *pdata;          /*  pointer to data             */
     } u;
-    u8      state:4;
-    u8      pdata_valid:1;     /* if 1, use pdata above        */
-    u8      dir:1;             /*  1=read, 0=write             */
-    u8      df:1;
-    u8      type;              /* I/O type                     */
+    uint8_t state:4;
+    uint8_t pdata_valid:1; /* if 1, use pdata above  */
+    uint8_t dir:1;   /*  1=read, 0=write             */
+    uint8_t df:1;
+    uint8_t type;    /* I/O type                     */
 } ioreq_t;
 
+#define MAX_VECTOR    256
+#define BITS_PER_BYTE   8
+#define INTR_LEN        (MAX_VECTOR/(BITS_PER_BYTE * sizeof(uint64_t)))
+
 typedef struct {
-    u64   pic_intr[INTR_LEN];
-    u64   pic_mask[INTR_LEN];
-    int     eport; /* Event channel port */
+    uint64_t pic_intr[INTR_LEN];
+    uint64_t pic_mask[INTR_LEN];
+    int      eport; /* Event channel port */
 } global_iodata_t;
 
 typedef struct {
-    ioreq_t         vp_ioreq;
-    vl_apic_info    apic_intr;
+    ioreq_t       vp_ioreq;
+    unsigned long vp_intr[INTR_LEN];
 } vcpu_iodata_t;
 
 typedef struct {
-    int vcpu_number;
-    global_iodata_t     sp_global;
-    vcpu_iodata_t       vcpu_iodata[1];
+    global_iodata_t sp_global;
+    vcpu_iodata_t   vcpu_iodata[1];
 } shared_iopage_t;
 
 #endif /* _IOREQ_H_ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-set-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff -r 42cab8724273 -r ff7c5a791ed5 xen/include/public/io/vmx_vlapic.h
--- a/xen/include/public/io/vmx_vlapic.h        Sat Oct 15 03:09:43 2005
+++ b/xen/include/public/io/vmx_vlapic.h        Fri Oct 21 19:58:39 2005
@@ -1,29 +1,67 @@
 #ifndef _VMX_VLAPIC_H
 #define _VMX_VLAPIC_H
 
+/*
+   We extended one bit for PIC type
+ */
 #define VLAPIC_DELIV_MODE_FIXED          0x0
 #define VLAPIC_DELIV_MODE_LPRI           0x1
 #define VLAPIC_DELIV_MODE_SMI            0x2
-#define VLAPIC_DELIV_MODE_PMI            0x2
 #define VLAPIC_DELIV_MODE_NMI            0x4
 #define VLAPIC_DELIV_MODE_INIT           0x5
 #define VLAPIC_DELIV_MODE_STARTUP        0x6
 #define VLAPIC_DELIV_MODE_EXT            0x7
 #define VLAPIC_DELIV_MODE_MASK            0x8
 
-#define MAX_VECTOR    256
-#define BITS_PER_BYTE   8
-#define INTR_LEN        (MAX_VECTOR/(BITS_PER_BYTE * sizeof(u64)))
-#define INTR_LEN_32        (MAX_VECTOR/(BITS_PER_BYTE * sizeof(u32)))
+#define VLAPIC_MSG_LEVEL                4
+
+#define INTR_EXT   0
+#define INTR_APIC   1
+#define INTR_LAPIC  2
+
+#define VL_STATE_EOI    1
+#define VL_STATE_EXT_LOCK   2
+#define VL_STATE_MSG_LOCK   3
+#define VL_STATE_EOI_LOCK   3
+
+#define VLOCAL_APIC_MAX_INTS             256
+#define VLAPIC_INT_COUNT                (VLOCAL_APIC_MAX_INTS/(BITS_PER_BYTE * 
sizeof(uint64_t)))
+#define VLAPIC_INT_COUNT_32             (VLOCAL_APIC_MAX_INTS/(BITS_PER_BYTE * 
sizeof(uint32_t)))
+
+struct vapic_bus_message{
+   uint8_t   deliv_mode:4;   /* deliver mode, including fixed, LPRI, etc */
+   uint8_t   level:1;        /* level or edge */
+   uint8_t   trig_mod:1;    /* assert or disassert */
+   uint8_t   reserved:2;
+   uint8_t   vector;
+};
 
 typedef struct {
-    u32   vl_lapic_id;
-    u32   vl_apr;
-    u32   vl_logical_dest;
-    u32   vl_dest_format;
-    u32   vl_arb_id;
-    u64   irr[INTR_LEN];
-    u64   tmr[INTR_LEN];
-}vl_apic_info;
+    /* interrupt for PIC and ext type IOAPIC interrupt */
+    uint64_t   vl_ext_intr[VLAPIC_INT_COUNT];
+    uint64_t   vl_ext_intr_mask[VLAPIC_INT_COUNT];
+    uint64_t   vl_apic_intr[VLAPIC_INT_COUNT];
+    uint64_t   vl_apic_tmr[VLAPIC_INT_COUNT];
+    uint64_t   vl_eoi[VLAPIC_INT_COUNT];
+    uint32_t   vl_lapic_id;
+    uint32_t   direct_intr;
+    uint32_t   vl_apr;
+    uint32_t   vl_logical_dest;
+    uint32_t   vl_dest_format;
+    uint32_t   vl_arb_id;
+    uint32_t   vl_state;
+    uint32_t   apic_msg_count;
+    struct vapic_bus_message  vl_apic_msg[24];
+} vlapic_info;
 
 #endif /* _VMX_VLAPIC_H_ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-set-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] Backout incautious public/io header changes, Xen patchbot -unstable <=