|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH xeniface] Bring XENBUS interface versions up to date...
From: Paul Durrant <pdurrant@xxxxxxxxxx>
... and amend binding accordingly.
Signed-off-by: Paul Durrant <pdurrant@xxxxxxxxxx>
---
include/evtchn_interface.h | 44 ++++++++++++++++++---------------
include/gnttab_interface.h | 17 +------------
include/shared_info_interface.h | 30 ++++++++++++++++++++--
include/store_interface.h | 22 +----------------
src/xeniface.inf | 6 ++---
5 files changed, 57 insertions(+), 62 deletions(-)
diff --git a/include/evtchn_interface.h b/include/evtchn_interface.h
index 76a9256fa057..dbe874511866 100644
--- a/include/evtchn_interface.h
+++ b/include/evtchn_interface.h
@@ -100,6 +100,8 @@ typedef VOID
\b VIRQ:
\param Index The index number of the VIRQ
+ \param Group The group number of the CPU that should handle the VIRQ
+ \param Number The relative number of the CPU that should handle the VIRQ
\return Event channel handle
*/
@@ -249,23 +251,6 @@ typedef VOID
DEFINE_GUID(GUID_XENBUS_EVTCHN_INTERFACE,
0xbe2440ac, 0x1098, 0x4150, 0xaf, 0x4d, 0x45, 0x2f, 0xad, 0xce, 0xf9, 0x23);
-/*! \struct _XENBUS_EVTCHN_INTERFACE_V4
- \brief EVTCHN interface version 4
- \ingroup interfaces
-*/
-struct _XENBUS_EVTCHN_INTERFACE_V4 {
- INTERFACE Interface;
- XENBUS_EVTCHN_ACQUIRE EvtchnAcquire;
- XENBUS_EVTCHN_RELEASE EvtchnRelease;
- XENBUS_EVTCHN_OPEN EvtchnOpen;
- XENBUS_EVTCHN_BIND EvtchnBind;
- XENBUS_EVTCHN_UNMASK_V4 EvtchnUnmaskVersion4;
- XENBUS_EVTCHN_SEND_V1 EvtchnSendVersion1;
- XENBUS_EVTCHN_TRIGGER EvtchnTrigger;
- XENBUS_EVTCHN_GET_PORT EvtchnGetPort;
- XENBUS_EVTCHN_CLOSE EvtchnClose;
-};
-
/*! \struct _XENBUS_EVTCHN_INTERFACE_V5
\brief EVTCHN interface version 5
\ingroup interfaces
@@ -340,7 +325,26 @@ struct _XENBUS_EVTCHN_INTERFACE_V8 {
XENBUS_EVTCHN_CLOSE EvtchnClose;
};
-typedef struct _XENBUS_EVTCHN_INTERFACE_V8 XENBUS_EVTCHN_INTERFACE,
*PXENBUS_EVTCHN_INTERFACE;
+/*! \struct _XENBUS_EVTCHN_INTERFACE_V9
+ \brief EVTCHN interface version 9
+ \ingroup interfaces
+*/
+struct _XENBUS_EVTCHN_INTERFACE_V9 {
+ INTERFACE Interface;
+ XENBUS_EVTCHN_ACQUIRE EvtchnAcquire;
+ XENBUS_EVTCHN_RELEASE EvtchnRelease;
+ XENBUS_EVTCHN_OPEN EvtchnOpen;
+ XENBUS_EVTCHN_BIND EvtchnBind;
+ XENBUS_EVTCHN_UNMASK EvtchnUnmask;
+ XENBUS_EVTCHN_SEND EvtchnSend;
+ XENBUS_EVTCHN_TRIGGER EvtchnTrigger;
+ XENBUS_EVTCHN_GET_COUNT EvtchnGetCount;
+ XENBUS_EVTCHN_WAIT EvtchnWait;
+ XENBUS_EVTCHN_GET_PORT EvtchnGetPort;
+ XENBUS_EVTCHN_CLOSE EvtchnClose;
+};
+
+typedef struct _XENBUS_EVTCHN_INTERFACE_V9 XENBUS_EVTCHN_INTERFACE,
*PXENBUS_EVTCHN_INTERFACE;
/*! \def XENBUS_EVTCHN
\brief Macro at assist in method invocation
@@ -350,7 +354,7 @@ typedef struct _XENBUS_EVTCHN_INTERFACE_V8
XENBUS_EVTCHN_INTERFACE, *PXENBUS_EVT
#endif // _WINDLL
-#define XENBUS_EVTCHN_INTERFACE_VERSION_MIN 4
-#define XENBUS_EVTCHN_INTERFACE_VERSION_MAX 8
+#define XENBUS_EVTCHN_INTERFACE_VERSION_MIN 5
+#define XENBUS_EVTCHN_INTERFACE_VERSION_MAX 9
#endif // _XENBUS_EVTCHN_INTERFACE_H
diff --git a/include/gnttab_interface.h b/include/gnttab_interface.h
index 48a555acf378..865c4f302444 100644
--- a/include/gnttab_interface.h
+++ b/include/gnttab_interface.h
@@ -233,21 +233,6 @@ typedef NTSTATUS
DEFINE_GUID(GUID_XENBUS_GNTTAB_INTERFACE,
0x763679c5, 0xe5c2, 0x4a6d, 0x8b, 0x88, 0x6b, 0xb0, 0x2e, 0xc4, 0x2d, 0x8e);
-/*! \struct _XENBUS_GNTTAB_INTERFACE_V1
- \brief GNTTAB interface version 1
- \ingroup interfaces
-*/
-struct _XENBUS_GNTTAB_INTERFACE_V1 {
- INTERFACE Interface;
- XENBUS_GNTTAB_ACQUIRE GnttabAcquire;
- XENBUS_GNTTAB_RELEASE GnttabRelease;
- XENBUS_GNTTAB_CREATE_CACHE_V1 GnttabCreateCacheVersion1;
- XENBUS_GNTTAB_PERMIT_FOREIGN_ACCESS GnttabPermitForeignAccess;
- XENBUS_GNTTAB_REVOKE_FOREIGN_ACCESS GnttabRevokeForeignAccess;
- XENBUS_GNTTAB_GET_REFERENCE GnttabGetReference;
- XENBUS_GNTTAB_DESTROY_CACHE GnttabDestroyCache;
-};
-
/*! \struct _XENBUS_GNTTAB_INTERFACE_V2
\brief GNTTAB interface version 2
\ingroup interfaces
@@ -311,7 +296,7 @@ typedef struct _XENBUS_GNTTAB_INTERFACE_V4
XENBUS_GNTTAB_INTERFACE, *PXENBUS_GNT
#endif // _WINDLL
-#define XENBUS_GNTTAB_INTERFACE_VERSION_MIN 1
+#define XENBUS_GNTTAB_INTERFACE_VERSION_MIN 2
#define XENBUS_GNTTAB_INTERFACE_VERSION_MAX 4
#endif // _XENBUS_GNTTAB_INTERFACE_H
diff --git a/include/shared_info_interface.h b/include/shared_info_interface.h
index f99bcb634cdd..27910b020a8e 100644
--- a/include/shared_info_interface.h
+++ b/include/shared_info_interface.h
@@ -60,6 +60,15 @@ typedef VOID
IN PINTERFACE Interface
);
+/*! \typedef XENBUS_SHARED_INFO_UPCALL_SUPPORTED
+ \brief Private method for EVTCHN inerface
+*/
+typedef BOOLEAN
+(*XENBUS_SHARED_INFO_UPCALL_SUPPORTED)(
+ IN PINTERFACE Interface,
+ IN ULONG Index
+ );
+
/*! \typedef XENBUS_SHARED_INFO_UPCALL_PENDING
\brief Private method for EVTCHN inerface
*/
@@ -168,7 +177,24 @@ struct _XENBUS_SHARED_INFO_INTERFACE_V3 {
XENBUS_SHARED_INFO_GET_TIME SharedInfoGetTime;
};
-typedef struct _XENBUS_SHARED_INFO_INTERFACE_V3 XENBUS_SHARED_INFO_INTERFACE,
*PXENBUS_SHARED_INFO_INTERFACE;
+/*! \struct _XENBUS_SHARED_INFO_INTERFACE_V4
+ \brief SHARED_INFO interface version 4
+ \ingroup interfaces
+*/
+struct _XENBUS_SHARED_INFO_INTERFACE_V4 {
+ INTERFACE Interface;
+ XENBUS_SHARED_INFO_ACQUIRE SharedInfoAcquire;
+ XENBUS_SHARED_INFO_RELEASE SharedInfoRelease;
+ XENBUS_SHARED_INFO_UPCALL_SUPPORTED SharedInfoUpcallSupported;
+ XENBUS_SHARED_INFO_UPCALL_PENDING SharedInfoUpcallPending;
+ XENBUS_SHARED_INFO_EVTCHN_POLL SharedInfoEvtchnPoll;
+ XENBUS_SHARED_INFO_EVTCHN_ACK SharedInfoEvtchnAck;
+ XENBUS_SHARED_INFO_EVTCHN_MASK SharedInfoEvtchnMask;
+ XENBUS_SHARED_INFO_EVTCHN_UNMASK SharedInfoEvtchnUnmask;
+ XENBUS_SHARED_INFO_GET_TIME SharedInfoGetTime;
+};
+
+typedef struct _XENBUS_SHARED_INFO_INTERFACE_V4 XENBUS_SHARED_INFO_INTERFACE,
*PXENBUS_SHARED_INFO_INTERFACE;
/*! \def XENBUS_SHARED_INFO
\brief Macro at assist in method invocation
@@ -179,6 +205,6 @@ typedef struct _XENBUS_SHARED_INFO_INTERFACE_V3
XENBUS_SHARED_INFO_INTERFACE, *P
#endif // _WINDLL
#define XENBUS_SHARED_INFO_INTERFACE_VERSION_MIN 2
-#define XENBUS_SHARED_INFO_INTERFACE_VERSION_MAX 3
+#define XENBUS_SHARED_INFO_INTERFACE_VERSION_MAX 4
#endif // _XENBUS_SHARED_INFO_H
diff --git a/include/store_interface.h b/include/store_interface.h
index 52f1a1dde592..e1251dd1369f 100644
--- a/include/store_interface.h
+++ b/include/store_interface.h
@@ -290,26 +290,6 @@ typedef NTSTATUS
DEFINE_GUID(GUID_XENBUS_STORE_INTERFACE,
0x86824c3b, 0xd34e, 0x4753, 0xb2, 0x81, 0x2f, 0x1e, 0x3a, 0xd2, 0x14, 0xd7);
-/*! \struct _XENBUS_STORE_INTERFACE_V1
- \brief STORE interface version 1
- \ingroup interfaces
-*/
-struct _XENBUS_STORE_INTERFACE_V1 {
- INTERFACE Interface;
- XENBUS_STORE_ACQUIRE StoreAcquire;
- XENBUS_STORE_RELEASE StoreRelease;
- XENBUS_STORE_FREE StoreFree;
- XENBUS_STORE_READ StoreRead;
- XENBUS_STORE_PRINTF StorePrintf;
- XENBUS_STORE_REMOVE StoreRemove;
- XENBUS_STORE_DIRECTORY StoreDirectory;
- XENBUS_STORE_TRANSACTION_START StoreTransactionStart;
- XENBUS_STORE_TRANSACTION_END StoreTransactionEnd;
- XENBUS_STORE_WATCH_ADD StoreWatchAdd;
- XENBUS_STORE_WATCH_REMOVE StoreWatchRemove;
- XENBUS_STORE_POLL StorePoll;
-};
-
/*! \struct _XENBUS_STORE_INTERFACE_V2
\brief STORE interface version 2
\ingroup interfaces
@@ -341,7 +321,7 @@ typedef struct _XENBUS_STORE_INTERFACE_V2
XENBUS_STORE_INTERFACE, *PXENBUS_STORE
#endif // _WINDLL
-#define XENBUS_STORE_INTERFACE_VERSION_MIN 1
+#define XENBUS_STORE_INTERFACE_VERSION_MIN 2
#define XENBUS_STORE_INTERFACE_VERSION_MAX 2
#endif // _XENBUS_STORE_INTERFACE_H
diff --git a/src/xeniface.inf b/src/xeniface.inf
index 14ebdb224238..8968d6ebc9f9 100644
--- a/src/xeniface.inf
+++ b/src/xeniface.inf
@@ -49,9 +49,9 @@ ServiceDestDir.Copy = 11
; DisplayName Section DeviceID
; ----------- ------- --------
-%XenIfaceDevice.DeviceDesc% =XenIface_Device,
XENBUS\VEN_@VENDOR_PREFIX@@VENDOR_DEVICE_ID@&DEV_IFACE&REV_09000006
-%XenIfaceDevice.DeviceDesc% =XenIface_Device,
XENBUS\VEN_@VENDOR_PREFIX@0001&DEV_IFACE&REV_09000006
-%XenIfaceDevice.DeviceDesc% =XenIface_Device,
XENBUS\VEN_@VENDOR_PREFIX@0002&DEV_IFACE&REV_09000006
+%XenIfaceDevice.DeviceDesc% =XenIface_Device,
XENBUS\VEN_@VENDOR_PREFIX@@VENDOR_DEVICE_ID@&DEV_IFACE&REV_09000009
+%XenIfaceDevice.DeviceDesc% =XenIface_Device,
XENBUS\VEN_@VENDOR_PREFIX@0001&DEV_IFACE&REV_09000009
+%XenIfaceDevice.DeviceDesc% =XenIface_Device,
XENBUS\VEN_@VENDOR_PREFIX@0002&DEV_IFACE&REV_09000009
[XenIface_Device]
CopyFiles=XenIface_Device.Copy
--
2.17.1
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |