[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [win-pv-devel] [PATCH] Update bindings
Refresh the interface headers and add the XENBUS major version into the top byte of the revision, since this is now used to avoid namespace conflicts. Signed-off-by: Paul Durrant <paul.durrant@xxxxxxxxxx> --- include/emulated_interface.h | 5 +++-- include/evtchn_interface.h | 36 +++++++++++++++++++++++++++++++----- include/suspend_interface.h | 2 +- src/xenvbd.inf | 6 +++--- 4 files changed, 38 insertions(+), 11 deletions(-) diff --git a/include/emulated_interface.h b/include/emulated_interface.h index 85ed2b8..9361f8d 100644 --- a/include/emulated_interface.h +++ b/include/emulated_interface.h @@ -66,7 +66,8 @@ typedef VOID \param Interface The interface header \param DeviceID The DeviceID of the device - \param InstanceID The (un-prefixed) InstanceID of the device + \param InstanceID The (un-prefixed) InstanceID of the device or + NULL to match any device instance \return TRUE if the specified device is present in the system or FALSE if it is not */ @@ -74,7 +75,7 @@ typedef BOOLEAN (*XENFILT_EMULATED_IS_DEVICE_PRESENT)( IN PVOID Context, IN PCHAR DeviceID, - IN PCHAR InstanceID + IN PCHAR InstanceID OPTIONAL ); /*! \typedef XENFILT_EMULATED_IS_DISK_PRESENT diff --git a/include/evtchn_interface.h b/include/evtchn_interface.h index 1bc456a..6f8fe42 100644 --- a/include/evtchn_interface.h +++ b/include/evtchn_interface.h @@ -112,18 +112,27 @@ typedef PXENBUS_EVTCHN_CHANNEL ... ); +typedef NTSTATUS +(*XENBUS_EVTCHN_BIND_V2)( + IN PINTERFACE Interface, + IN PXENBUS_EVTCHN_CHANNEL Channel, + IN ULONG Cpu + ); + /*! \typedef XENBUS_EVTCHN_BIND \brief Bind an event channel to a specific CPU \param Interface The interface header \param Channel The channel handle - \param Cpu The CPU that should handle events + \param Group The group number of the CPU that should handle events + \param Number The relative number of the CPU that should handle events */ typedef NTSTATUS (*XENBUS_EVTCHN_BIND)( IN PINTERFACE Interface, IN PXENBUS_EVTCHN_CHANNEL Channel, - IN ULONG Cpu + IN USHORT Group, + IN UCHAR Number ); typedef BOOLEAN @@ -225,7 +234,7 @@ struct _XENBUS_EVTCHN_INTERFACE_V2 { XENBUS_EVTCHN_ACQUIRE EvtchnAcquire; XENBUS_EVTCHN_RELEASE EvtchnRelease; XENBUS_EVTCHN_OPEN EvtchnOpen; - XENBUS_EVTCHN_BIND EvtchnBind; + XENBUS_EVTCHN_BIND_V2 EvtchnBindVersion2; XENBUS_EVTCHN_UNMASK_V1 EvtchnUnmaskVersion1; XENBUS_EVTCHN_SEND EvtchnSend; XENBUS_EVTCHN_TRIGGER EvtchnTrigger; @@ -242,6 +251,23 @@ struct _XENBUS_EVTCHN_INTERFACE_V3 { XENBUS_EVTCHN_ACQUIRE EvtchnAcquire; XENBUS_EVTCHN_RELEASE EvtchnRelease; XENBUS_EVTCHN_OPEN EvtchnOpen; + XENBUS_EVTCHN_BIND_V2 EvtchnBindVersion2; + XENBUS_EVTCHN_UNMASK EvtchnUnmask; + XENBUS_EVTCHN_SEND EvtchnSend; + XENBUS_EVTCHN_TRIGGER EvtchnTrigger; + XENBUS_EVTCHN_GET_PORT EvtchnGetPort; + XENBUS_EVTCHN_CLOSE EvtchnClose; +}; + +/*! \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 EvtchnUnmask; XENBUS_EVTCHN_SEND EvtchnSend; @@ -250,7 +276,7 @@ struct _XENBUS_EVTCHN_INTERFACE_V3 { XENBUS_EVTCHN_CLOSE EvtchnClose; }; -typedef struct _XENBUS_EVTCHN_INTERFACE_V3 XENBUS_EVTCHN_INTERFACE, *PXENBUS_EVTCHN_INTERFACE; +typedef struct _XENBUS_EVTCHN_INTERFACE_V4 XENBUS_EVTCHN_INTERFACE, *PXENBUS_EVTCHN_INTERFACE; /*! \def XENBUS_EVTCHN \brief Macro at assist in method invocation @@ -261,7 +287,7 @@ typedef struct _XENBUS_EVTCHN_INTERFACE_V3 XENBUS_EVTCHN_INTERFACE, *PXENBUS_EVT #endif // _WINDLL #define XENBUS_EVTCHN_INTERFACE_VERSION_MIN 1 -#define XENBUS_EVTCHN_INTERFACE_VERSION_MAX 3 +#define XENBUS_EVTCHN_INTERFACE_VERSION_MAX 4 #endif // _XENBUS_EVTCHN_INTERFACE_H diff --git a/include/suspend_interface.h b/include/suspend_interface.h index df1b4b0..cbe11ab 100644 --- a/include/suspend_interface.h +++ b/include/suspend_interface.h @@ -126,7 +126,7 @@ typedef VOID This method must always be invoked with IRQL == PASSIVE_LEVEL */ -typedef VOID +typedef NTSTATUS (*XENBUS_SUSPEND_TRIGGER)( IN PINTERFACE Interface ); diff --git a/src/xenvbd.inf b/src/xenvbd.inf index 17ad793..dc7ca24 100644 --- a/src/xenvbd.inf +++ b/src/xenvbd.inf @@ -53,9 +53,9 @@ xenvbd_coinst.dll=0,, %Company%=Inst,NT$ARCH$ [Inst.NT$ARCH$] -%XenVbdDesc%=XenVbd_Inst,XENBUS\VEN_XSC000&DEV_VBD&REV_00000001 -%XenVbdDesc%=XenVbd_Inst,XENBUS\VEN_XS0001&DEV_VBD&REV_00000001 -%XenVbdDesc%=XenVbd_Inst,XENBUS\VEN_XS0002&DEV_VBD&REV_00000001 +%XenVbdDesc%=XenVbd_Inst,XENBUS\VEN_XSC000&DEV_VBD&REV_08000008 +%XenVbdDesc%=XenVbd_Inst,XENBUS\VEN_XS0001&DEV_VBD&REV_08000008 +%XenVbdDesc%=XenVbd_Inst,XENBUS\VEN_XS0002&DEV_VBD&REV_08000008 [XenVbd_Inst] CopyFiles=XenVbd_Copyfiles -- 2.1.1 _______________________________________________ win-pv-devel mailing list win-pv-devel@xxxxxxxxxxxxxxxxxxxx http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |