... and amend binding accordingly.
Signed-off-by: Paul Durrant <pdurrant@amazon.com>
\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
*/
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
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
#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
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
#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
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
*/
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
#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
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
#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
; 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